So fügen Sie einem symfony 2-Formular einige zusätzliche Daten hinzu

8

Ich habe ein Formular für meine Entität namens Book und ich habe einen Typ, um ein Formular in meiner Ansicht anzuzeigen. In diesem Typ habe ich einige Felder, die Eigenschaften in meiner Entität zugeordnet sind.

Nun möchte ich ein weiteres Feld hinzufügen, das in meiner Entität nicht zugeordnet ist und einige Anfangsdaten für dieses Feld während der Formularerstellung liefert.

Mein Typ sieht so aus

%Vor%

Das Formular wird wie folgt erstellt

%Vor%

Wie kann ich jetzt während der Formularerstellung erste Daten liefern? Oder wie muss ich die Erstellung des Formulars ändern, um dem Feld another_field Anfangsdaten hinzuzufügen?

    
Benjamin Paap 08.01.2013, 20:10
quelle

3 Antworten

29

Ich habe auch ein Formular, das Felder hat, die meist einer zuvor definierten Entität entsprechen, aber eines der Formularfelder ist auf false gesetzt.

Um dies im Controller zu umgehen, können Sie ihm einige Anfangsdaten ziemlich einfach geben:

%Vor%

einfach so. Wenn Sie dann die Formulardaten verarbeiten, um sie zu speichern, können Sie auf die nicht zugeordneten Daten mit folgenden Befehlen zugreifen:

%Vor%     
targnation 05.04.2013, 21:18
quelle
5

Ein Vorschlag könnte sein, ein Konstruktorargument (oder Setter) in Ihrem BookType hinzuzufügen, das die "another_field" -Daten enthält, und in den add-Argumenten den Parameter 'data':

%Vor%

Dann konstruiere:

%Vor%     
Mike 08.01.2013 20:32
quelle
2

Sie können die Anfrageparameter wie folgt ändern, um das Formular mit zusätzlichen Daten zu unterstützen:

%Vor%

Auf diese Weise füllt Ihr Formular beim Rendern die richtigen Werte für Ihr Feld aus. Wenn Sie viele Felder liefern möchten, ist dies eine Option.

    
Benjamin Paap 08.01.2013 20:54
quelle

Tags und Links