Wie zeige ich den vollständigen Namen in Embeds an

Hallo Leute

Ich habe gerade diesen Beitrag gelesen: How to display full name in comments embeds

Ich habe diese Befehle ausgeführt.

cd /var/discourse
./launcher enter app
x86_64 arch detected.
root@discourse-app:/var/www/discourse# cd app/views/embed/
root@discourse-app:/var/www/discourse/app/views/embed# nano comments.html.erb

Nano war nicht installiert, also habe ich es installiert und comments.html.erb bearbeitet, wobei ich die Zeilen aus dem zitierten Beitrag ersetzt habe.

Dann habe ich den Launcher verlassen und Folgendes ausgeführt:

./launcher rebuild app

Nach dem Rebuild gab es keinen Unterschied, ich sehe immer noch Benutzernamen anstelle von vollständigen Namen in den Einbettungen.

Wo habe ich etwas falsch gemacht?

Danke

2 „Gefällt mir“

Willkommen, Mark! :wave:

Wenn die App neu erstellt wird, wird Discourse neu heruntergeladen, und alle Änderungen, die Sie innerhalb des Containers vorgenommen haben, werden überschrieben.

Wenn Sie Änderungen an Discourse vornehmen möchten, ist die Bearbeitung dieser Dateien auf diese Weise nicht der richtige Weg.

Das Anpassen von Funktionen von Discourse erfolgt normalerweise entweder mit einer Theme-Komponente:

Oder einem Plugin:

Wenn Sie über Programmierkenntnisse verfügen, empfehle ich Ihnen, sich diese Links anzusehen. :slight_smile:


Dieser Link könnte besonders interessant sein:

Auf den ersten Blick scheint er genau das zu tun, was Sie suchen. Er zielt nur auf eine andere Datei im selben übergeordneten Ordner ab.

1 „Gefällt mir“

@Canapin Danke für deine Vorschläge.

Ich habe dieses Repository erstellt: https://github.com/OptDev/optuma-discourse-custom-embed

Aber ich mache keine großen Fortschritte.

Ich führe diesen Befehl aus und er wird ohne Fehler erstellt:

./launcher enter app

Aber ich scheine die erwarteten Änderungen bei den Einbettungen nicht zu sehen. Ich habe ein paar benutzerdefinierte CSS-Klassennamen hinzugefügt und <%= post.user.username %> zu <%= post.user.name %> geändert. Ich wäre dankbar für weitere Hinweise, um dies zum Laufen zu bringen. Ich kann mir nicht vorstellen, dass es zu kompliziert ist, eine Plugin-Vorlagendatei von einem anderen Plugin zu überschreiben.

Was ich tun konnte, ist, die App aufzurufen und meine Plugin-Version der Vorlage manuell nach /var/www/discourse/app/views/embed/ zu kopieren, dann starte ich die App neu und sehe die Ergebnisse, die ich suche.

Ich muss nur dafür sorgen, dass es automatisch passiert, wenn das Plugin geladen wird, und da stecke ich fest.

Gibt es Ideen, warum diese Datei /app/views/embed/comments.html.erb nicht mit der Datei aus meinem Plugin überschrieben wird?

after_initialize do
  ::EmbedController.prepend_view_path File.expand_path("../embed", __FILE__)
end

Okay, das hatte ich richtig, es gab nur ein Problem mit dem Pfad.

Jetzt muss ich nur noch herausfinden, wie ich es dazu bringe, aus einem privaten Git-Repository zu ziehen.

1 „Gefällt mir“

Fügen Sie einfach den privaten Zugriffstoken zur geklonten URL hinzu

@merefield Wie würde das in der app.yml-Datei aussehen?

Schon gut, ich habe es hier gefunden. Install plugins on a self-hosted site

Eine Sache, die zu beachten ist: In der Dokumentation steht, dass man einen „Token“ verwenden soll…

git clone https://<token>@github.com/owner/repo.git

Ich habe festgestellt, dass ich den Benutzernamen und Token Ihres GitHub-Kontos verwenden musste

git clone https://<github-username>:<token>@github.com/owner/repo.git

1 „Gefällt mir“

Hat dein Plugin am Ende wie vorgesehen funktioniert? :slight_smile:

@Canapin Ja! Habe alles zum Laufen gebracht. So sieht die plugin.rb am Ende aus. Es stellte sich heraus, dass ich nur ein Pfadproblem hatte, wo ich die benutzerdefinierte Version der Datei abgelegt habe.

Ich habe sie schließlich in einem Ordner /custom_views/embed/comments.html.erb abgelegt.

# frozen_string_literal: true

# name: optuma_discourse_custom_embed
# about: Ein einfaches Plugin zur Anpassung der Vorlage in den Forum-Embeds
# version: 1.0.0
# authors: Optuma Pty Ltd
# url: https://github.com/OptDev/optuma-discourse-custom-embed
# required_version: 2.7.0

after_initialize do
  ::EmbedController.prepend_view_path File.expand_path("../custom_views", __FILE__)
end
1 „Gefällt mir“

This topic was automatically closed 30 days after the last reply. New replies are no longer allowed.