Anpassen des Formularfeld-Renderings

9

Ich möchte das Rendering eines Formularfelds auf der Bearbeitungsseite des Sonaten-Admin-Bundles anpassen , um ein Applet einzufügen, das den Textinhalt eines Feldes verwendet.

Ich weiß, dass ich die Funktion configureFormFields in der Admin-Klasse bearbeiten muss, aber ich muss 3 Dinge wissen:

  • Wie lautet die Syntax zum Bereitstellen einer Feldformularvorlage?
  • Wohin mit der Vorlagendatei (welches Verzeichnis)
  • Wie die Vorlage aussehen muss.
user1254498 07.01.2013, 10:36
quelle

3 Antworten

22

Eine Lösung gefunden

Was ich getan habe ist:

  1. Erstelle einen Feldtyp, lasst ihn in myCompany \ myBundle \ Form \ Type \ myfieldType.php

    myfieldType aufrufen %Vor%
  2. Registrierte den Typ in app / config / services.yml

    %Vor%
  3. In meiner myentityAdmin-Klasse

    %Vor%

    und

    %Vor%

    und die Vorlage:

    %Vor%

Und jetzt kann ich auf den Wert des Formularfelds durch die Zweigvariable "value" zugreifen!

So einfach ... wenn du es hast.

    
user1254498 07.01.2013, 15:53
quelle
8

Die Lösung von user1254498 funktioniert nur, wenn das Präfix des Blocknamens mit dem Namen des Formulartyps übereinstimmt. Zumindest mit der letzten Version von Sonata Admin Bundle (2.2.12). In diesem Fall:

%Vor%

Und in Bezug auf getFormTheme() solltest du auch das übergeordnete Thema zurückgeben, sonst kannst du den ganzen Stil brechen ...

%Vor%

Sie können auch auf den Admin-Dienst in der Zweigvorlage mit der Variablen sonata_admin.admim zugreifen.

    
devilcius 16.07.2014 15:27
quelle
4

In Ihrer Datei services.yml definieren Sie die Vorlage für Ihre Bearbeitungsaktion:

%Vor%

In dieser Vorlage können Sie Vorlagen für Felder in Ihrem Formular überschreiben:

%Vor%

Dann sieht meine Vorlage so aus:

%Vor%

In diesem Fall erscheinen die Kontrollkästchen in meinen Ländern in einer Spalte mit 60 Elementen, nicht in einer Spalte mit der gesamten Liste der Elemente.

Ich hoffe, das ist hilfreich für jemand anderen.

    
MortisQc 25.05.2015 16:03
quelle

Tags und Links