Site de démonstration | Code source de démonstration
Un framework d'administration moderne et réactif pour Ruby on Rails
Pour commencer à utiliser Trestle, ajoutez-le d'abord au Gemfile de votre application :
joyau 'tréteau'
Exécutez bundle install
, puis exécutez le générateur d'installation pour créer le fichier de configuration initial et les hooks de personnalisation :
$ rails generate trestle:install
Créez ensuite votre première ressource d'administration (en supposant que vous disposez d'un modèle Article
existant) :
$ rails generate trestle:resource Article
Après avoir redémarré votre serveur Rails, visitez http://localhost:3000/admin pour afficher votre administrateur nouvellement créé. Vous trouverez la définition de l'administrateur dans app/admin/articles_admin.rb
prête à être personnalisée.
Trestle.resource(:posts) faire # Ajouter un lien vers cet administrateur dans la navigation principale menu dogroup :blog_management, priorité : :first do item :posts, icône : "fa fa-file-text-o"end fin # Définir des étendues personnalisées pour la vue d'index scopes doscope :all, par défaut : truescope :publishedscope :drafts, -> { Post.unpublished } fin # Définir la liste des tables de vue d'index table docolumn :titre, lien : truecolumn :author, ->(post) { post.author.name }column :published, align: :center do |post| status_tag(icon("fa fa-check"), :success) if post.published?endcolumn :updated_at, en-tête : "Dernière mise à jour", aligner : centeractions fin # Définir la structure du formulaire pour les actions de création et d'édition form do# Organiser les champs en onglets et sidebarstab :post do text_field :title # Définir des champs de formulaire personnalisés pour une réutilisation facile éditeur :bodyendtab :metadata do # Disposer les champs basés sur une ligne de grille de 12 colonnes docol(sm: 6) { select :author, User.all }col(sm: 6) { tag_select :tags } endendsidebar do # Afficher un partiel personnalisé : app/views/admin/posts/_sidebar.html.erb rend la "barre latérale" fin fin
Les plugins suivants sont actuellement disponibles :
Nom | Description | Links |
---|---|---|
authentification par chevalet | Plugin d'authentification utilisateur | GitHub | RubyGemmes |
recherche sur chevalet | Plugin de recherche | GitHub | RubyGemmes |
tréteau-tinymce | Intégration de TinyMCE (éditeur WYSIWYG) | GitHub | RubyGemmes |
tréteau-simplemde | Intégration SimpleMDE (éditeur Markdown) | GitHub | RubyGemmes |
tréteau-sidekiq | Intégration Sidekiq | GitHub | RubyGemmes |
tréteau-active_storage | Intégration du stockage actif | GitHub | RubyGemmes |
tréteau-mobilité | Intégration de la mobilité | GitHub | RubyGemmes |
tréteau-omniauth | Plugin d'authentification OmniAuth | GitHub | RubyGemmes |
chevalet-auth-otp | Authentification utilisateur 2FA/OTP | GitHub | RubyGemmes |
Veuillez consulter CONTRIBUTING.md pour plus d'informations sur le développement et la contribution à Trestle.
La gemme est disponible en open source selon les termes de la licence LGPLv3.