Action Text mit Trix – Rich-Text-Editor mit dem b4um Generator
Mit dem b4um Generator lässt sich eine bestehende Rails-Ressource nachträglich um Action Text mit Trix erweitern.
Dabei wird nicht nur der normale Trix-Editor eingebunden. Der b4um Generator ergänzt ihn unter anderem um Überschriften, Textausrichtung, Farben, Container, Bildergalerien und eine Lightbox.
In diesem Tutorial verwenden wir eine einfache Post-Ressource und erweitern das Feld content zu einem Rich-Text-Feld.
1. Ausgangspunkt
Für dieses Beispiel existiert bereits eine Ressource Post mit den Feldern:
title
content
Sie kann beispielsweise mit dem b4um Scaffold erzeugt worden sein:
bin/rails generate b4um:scaffold Post title:string content:text
bin/rails db:migrate
Anschließend steht die normale CRUD-Oberfläche für Posts zur Verfügung.
Das Feld content ist zu diesem Zeitpunkt noch ein gewöhnliches Textfeld.
Der Generator ersetzt also gezielt das ausgewählte Feld und baut nicht das komplette Formular neu.
7. Den Editor im Browser öffnen
Rails starten:
bin/dev
Anschließend beispielsweise aufrufen:
http://localhost:3000/posts/new
Jetzt erscheint anstelle des normalen Textfeldes der erweiterte Trix-Editor.
Auf unserem Testbild sieht man bereits zusätzliche Werkzeuge neben den klassischen Trix-Funktionen.
8. Einen ersten Rich-Text-Beitrag anlegen
Als Titel verwenden wir beispielsweise:
Mein erster Rich-Text-Beitrag
Als ersten Inhalt:
Willkommen bei b4um
Darunter kann normaler Fließtext ergänzt werden:
Mit dem b4um Generator lässt sich Action Text mit Trix in eine bestehende Ressource integrieren.
Damit können wir die verschiedenen Formatierungen testen.
9. Überschriften H1 bis H6
Der b4um Trix-Editor erweitert die Werkzeugleiste um Überschriften von H1 bis H6.
Text markieren und das Überschriftenmenü öffnen.
Zur Verfügung stehen:
H1
H2
H3
H4
H5
H6
Für unser Beispiel markieren wir:
Willkommen bei b4um
und wählen H1.
Vor
Nach
10. Klassische Textformatierungen
Die normalen Rich-Text-Funktionen stehen ebenfalls zur Verfügung.
Dazu gehören beispielsweise:
Fett
Kursiv
Durchgestrichen
Links
Zitate
Listen
Einrückungen
Formatierungen können dabei auch nur auf einen Teil eines Absatzes angewendet werden.
Das haben wir später beim Editieren eines bestehenden Beitrags getestet: Innerhalb eines normalen Absatzes blieben Fett- und Kursivformatierungen nach dem Speichern erhalten.
11. Textausrichtung
Der erweiterte Editor unterstützt außerdem unterschiedliche Textausrichtungen.
Zur Verfügung stehen:
links
zentriert
rechts
Dadurch können einzelne Absätze unabhängig voneinander ausgerichtet werden.
Auch diese Formatierung bleibt nach dem Speichern und erneuten Bearbeiten erhalten.
12. Text- und Hintergrundfarben
Über das Farbwerkzeug lassen sich Textfarbe und Hintergrundfarbe verändern.
Im Test haben wir die Wörter:
Action Text mit Trix
formatiert.
Dabei wurde eine Textfarbe sowie ein gelber Hintergrund verwendet.
Eine Besonderheit beim Bearbeiten: Solange der formatierte Text selbst markiert ist, überlagert die Auswahlmarkierung teilweise die sichtbare Hintergrundfarbe.
Sobald die Textauswahl aufgehoben wird, sieht man die tatsächliche Formatierung deutlich.
Damit lässt sich unmittelbar kontrollieren, ob die gewählte Hintergrundfarbe tatsächlich angewendet wurde.
13. DIV-, SECTION- und ARTICLE-Container
Eine Besonderheit des b4um Trix-Editors sind editierbare HTML-Container.
In der Werkzeugleiste befinden sich:
div
section
article
Damit lässt sich ausgewählter Inhalt in einen entsprechenden Container einschließen.
Das ist beispielsweise praktisch, wenn bestimmte Inhaltsbereiche später gezielt per CSS oder JavaScript angesprochen werden sollen.
14. Eine ID für einen Container vergeben
Beim Erstellen eines Containers fragt der Editor nach einer ID.
In unserem Test wurde für eine Section beispielsweise eingegeben:
ich_bin_eine_section
4.webp
74.9 KB
Der Inhalt wird anschließend in einer Section gespeichert.
Die Konsole zeigte bei unserem Test unter anderem:
<section id="ich_bin_eine_section">
Mit dem b4um Generator lässt sich
<span style="background-color:rgb(250, 247, 133);color:rgb(207, 0, 0);">
Action Text mit Trix
</span>
in eine bestehende Ressource integrieren.
</section>
Die ID ist nicht nur im Editor vorhanden, sondern die Section befindet sich tatsächlich im erzeugten DOM.
Damit konnten wir gleichzeitig mehrere Dinge nachweisen:
<section> wurde gespeichert,
die ID wurde gespeichert,
die Textfarbe wurde gespeichert,
die Hintergrundfarbe wurde gespeichert,
der eigentliche Inhalt befindet sich weiterhin im Container.
Das ist ein sehr hilfreicher Test, wenn man kontrollieren möchte, was Trix tatsächlich im HTML erzeugt.
17. Bilder in Rich Text einfügen
Über die Attachment-Funktion von Trix können Bilder direkt in den Beitrag eingefügt werden.
In unserem Test wurden drei Bilder eingefügt und jeweils beschriftet:
iMac
MacBook Pro
MacBook
Die Bilder werden responsiv innerhalb des Rich-Text-Inhalts dargestellt.
Mehrere Bilder können dabei als Galerie erscheinen.
Das Layout passt sich der verfügbaren Breite an.
18. Bilder in der Lightbox öffnen
Bilder innerhalb des Rich-Text-Inhalts sind mit der b4um Image-Lightbox verbunden.
Ein Klick auf eines der Bilder öffnet die Galerie bildschirmfüllend.
Unsere Galerie enthielt drei Bilder.
Die Lightbox zeigte deshalb beispielsweise:
3 von 3
Zusätzlich stehen zur Verfügung:
vorheriges Bild,
nächstes Bild,
Schließen,
Bildbeschriftung,
Tastaturnavigation,
Maus- und Touch-Swipe.
Damit verhalten sich Rich-Text-Bilder genauso komfortabel wie die anderen vom b4um Generator unterstützten Bildergalerien.
19. Videos einfügen
Auch Videos können als Attachment in den Rich-Text-Inhalt aufgenommen werden.
Im Editor erscheint ein Video zunächst als Attachment.
Bei unserem Test beispielsweise:
1.mp4 12.35 MB
Beim Bearbeiten sieht das bewusst anders aus als die spätere Ausgabe.
editor
Auf der fertigen Show-Seite wird das Video dagegen als abspielbares Video ausgegeben.
Der Browser stellt die üblichen Bedienelemente zur Verfügung:
Play/Pause,
Zeitposition,
Lautstärke,
Vollbild,
weitere Browserfunktionen.
9.webp
355 KB
Damit können Bilder, Text und Video gemeinsam innerhalb eines Rich-Text-Beitrags verwendet werden.
20. Ausgabe auf der Show-Seite
Die normale Ressource wurde vom Generator ebenfalls angepasst.
Für die vollständige Ausgabe wird der Action-Text-Inhalt gerendert.
Gleichzeitig integriert der Generator die Image-Lightbox für darin enthaltene Bilder.
Dadurch bleiben die Rich-Text-Formatierungen in der Ausgabe erhalten.
In unserem Test waren unter anderem sichtbar:
H1-Überschrift,
Fließtext,
Listen,
Zitat,
farbiger Text,
gelber Hintergrund,
Bildergalerie,
Bildbeschriftungen,
Video,
Fett- und Kursivschrift,
unterschiedliche Textausrichtungen.
21. Kompakte Vorschau im Bento-Layout
Eine Besonderheit gibt es für die kompakte Darstellung eines Datensatzes.
Dort soll nicht das komplette Rich-Text-Dokument einschließlich HTML ausgegeben werden.
Der b4um Trix-Generator ist auf sichere wiederholte Ausführung ausgelegt.
Der gleiche Befehl kann deshalb erneut ausgeführt werden:
bin/rails generate b4um:trix Post content
Bereits vorhandene Integrationsteile sollen dabei nicht unnötig dupliziert werden.
Das ist besonders hilfreich, wenn ein Projekt später weiterentwickelt wird.
27. Hilfe zum Generator
Eine Übersicht aller b4um Generatoren erhält man mit:
bin/rails generate b4um:help
Dort befindet sich auch der Abschnitt:
TRIX / RICH TEXT
mit der grundlegenden Syntax:
bin/rails generate b4um:trix MODEL ATTRIBUTE
Beispiel:
bin/rails generate b4um:trix Article content
Fazit
Mit:
bin/rails generate b4um:trix Post content
kann eine bereits bestehende b4um Ressource nachträglich zu einem umfangreichen Rich-Text-System erweitert werden.
Dabei bleibt es nicht beim Standard-Trix-Editor.
Die b4um Integration verbindet Action Text und Trix mit zusätzlichen Funktionen wie H1–H6, Ausrichtungen, Farben, editierbaren HTML-Containern, IDs, responsiven Bildergalerien, Lightbox und Medien-Anhängen.
Besonders praktisch ist, dass der Generator gleichzeitig die bestehende Form, das Modell, die Ausgabe und die kompakte Bento-Vorschau anpasst.
Unser Test hat dabei den kompletten Lebenszyklus durchlaufen:
Scaffold
→ Trix installieren
→ Rich Text erstellen
→ formatieren
→ Container mit ID anlegen
→ HTML im Browser kontrollieren
→ Bilder einfügen
→ Lightbox testen
→ Video einfügen
→ speichern
→ erneut bearbeiten
→ aktualisieren
→ Ausgabe kontrollieren
Damit ist die Trix-Integration nicht nur installiert, sondern auch vollständig praktisch getestet.
Wir verwenden Cookies, um Inhalte und Anzeigen zu personalisieren,
Funktionen für soziale Medien anbieten zu können und die Zugriffe auf
unsere Website zu analysieren.
Sie akzeptieren unsere Cookies, wenn Sie fortfahren diese Webseite zu
nutzen.
Datenschutzerklärung.