Demo-Site | Demo-Quellcode
Ein modernes, reaktionsfähiges Admin-Framework für Ruby on Rails
Um Trestle zu verwenden, fügen Sie es zunächst der Gemfile Ihrer Anwendung hinzu:
Edelstein 'Bock'
Führen Sie bundle install
aus und führen Sie dann den Installationsgenerator aus, um die Erstkonfigurationsdatei und Anpassungs-Hooks zu erstellen:
$ rails generate trestle:install
Erstellen Sie dann Ihre erste Admin-Ressource (vorausgesetzt, Sie verfügen über ein vorhandenes Article
):
$ rails generate trestle:resource Article
Besuchen Sie nach dem Neustart Ihres Rails-Servers http://localhost:3000/admin, um Ihren neu erstellten Admin anzuzeigen. Sie finden die Admin-Definition in app/admin/articles_admin.rb
und können sie anpassen.
Trestle.resource(:posts) tun # Fügen Sie in der Hauptnavigation einen Link zu diesem Administrator hinzu Menü dogroup :blog_management, Priorität: :first do item :posts, icon: „fa fa-file-text-o“end Ende # Definieren Sie benutzerdefinierte Bereiche für die Indexansicht Bereiche doscope :all, Standard: truescope :publishedscope :drafts, -> { Post.unpublished } Ende # Definieren Sie die Auflistung der Indexansichtstabelle Tabelle docolumn :title, Link: 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, Header: "Last Updated", align: :centeractions Ende # Definieren Sie die Formularstruktur für die Neu- und Bearbeitungsaktionen form do# Organisieren Sie Felder in Registerkarten und Seitenleistenstab :post do text_field :title # Definieren Sie benutzerdefinierte Formularfelder zur einfachen Wiederverwendung editor :bodyendtab :metadata do # Layoutfelder basierend auf einer 12-spaltigen Rasterzeile docol(sm: 6) { select :author, User.all }col(sm: 6) { tag_select :tags } endendsidebar do # Einen benutzerdefinierten Teil rendern: app/views/admin/posts/_sidebar.html.erb rendern „sidebar“ende enden
Folgende Plugins sind derzeit verfügbar:
Name | Beschreibung | Links |
---|---|---|
trestle-auth | Plugin zur Benutzerauthentifizierung | GitHub | RubyGems |
Bocksuche | Such-Plugin | GitHub | RubyGems |
Trestle-Tinymce | TinyMCE-Integration (WYSIWYG-Editor). | GitHub | RubyGems |
Bock-einfach | SimpleMDE-Integration (Markdown-Editor). | GitHub | RubyGems |
Trestle-Sidekiq | Sidekiq-Integration | GitHub | RubyGems |
trestle-active_storage | Aktive Speicherintegration | GitHub | RubyGems |
Bockmobilität | Mobilitätsintegration | GitHub | RubyGems |
Trestle-Omniauth | OmniAuth-Authentifizierungs-Plugin | GitHub | RubyGems |
trestle-auth-otp | 2FA/OTP-Benutzerauthentifizierung | GitHub | RubyGems |
Weitere Informationen zur Entwicklung und Mitarbeit bei Trestle finden Sie unter CONTRIBUTING.md.
Das Gem ist als Open Source unter den Bedingungen der LGPLv3-Lizenz verfügbar.