Symfony 2 Forms-Entität Feldtyp-Gruppierung

8

Ich rende ein Formular in Symfony2 mit data_class, das auf Reservation entity abgebildet ist, und dieses Formular hat einen Entity-Feldtyp der Klasse Service . Die Beziehung zwischen Reservation und Service Klasse ist viele zu viele. Ein Service hat dann eine ServiceType , die eine andere Klasse ist, die von der Service class

als viele zu eins gemappt wird

Ich möchte alle Dienste als Kontrollkästchen im Reservierungsformular anzeigen, gruppiert nach Servicetyp. Bisher kann ich alle Dienste zusammen anzeigen (der Code stammt von ReservationType class):

%Vor%

Und das Formular wird standardmäßig angezeigt:

%Vor%

Das Ergebnis ist etwa so:

%Vor%

Was ich erreichen möchte, ist:

%Vor%

Ich habe versucht, nur Teilmengen von Diensten anzugeben, indem ich die folgende Option query_builder verwende:

%Vor%

Das ist falsch, weil:

  1. Ich muss die ServiceType id
  2. angeben
  3. Das Hinzufügen der 'services' zum Builder zweimal überschreibt die erste Addition (die logisch ist, aber nicht gelöst werden kann, ohne die Entitäten zu ändern)

Was wäre die beste Option für den Umgang mit solchen Formen? Es gibt bisher nur 2 ServiceType -s, aber ich möchte es dynamisch und wiederverwendbar halten.

    
Teo.sk 07.02.2012, 11:40
quelle

2 Antworten

1
___ tag123php ___ PHP ist eine weit verbreitete, dynamische, objektorientierte und interpretierte Skriptsprache, die primär für die serverseitige Webentwicklung entwickelt wurde. ___ qstntxt ___

Ich rende ein Formular in Symfony2 mit data_class, das auf %code% entity abgebildet ist, und dieses Formular hat einen Entity-Feldtyp der Klasse %code% . Die Beziehung zwischen %code% und %code% Klasse ist viele zu viele. Ein Service hat dann eine %code% , die eine andere Klasse ist, die von der %code% class

als viele zu eins gemappt wird

Ich möchte alle Dienste als Kontrollkästchen im Reservierungsformular anzeigen, gruppiert nach Servicetyp. Bisher kann ich alle Dienste zusammen anzeigen (der Code stammt von %code% class):

%Vor%

Und das Formular wird standardmäßig angezeigt:

%Vor%

Das Ergebnis ist etwa so:

%Vor%

Was ich erreichen möchte, ist:

%Vor%

Ich habe versucht, nur Teilmengen von Diensten anzugeben, indem ich die folgende Option query_builder verwende:

%Vor%

Das ist falsch, weil:

  1. Ich muss die %code% id
  2. angeben
  3. Das Hinzufügen der %code% zum Builder zweimal überschreibt die erste Addition (die logisch ist, aber nicht gelöst werden kann, ohne die Entitäten zu ändern)

Was wäre die beste Option für den Umgang mit solchen Formen? Es gibt bisher nur 2 %code% -s, aber ich möchte es dynamisch und wiederverwendbar halten.

    
___ tag123forms ___ Ein Formular ist im Wesentlichen ein Container, der verwendet werden kann, um eine beliebige Menge einer Teilmenge mehrerer Datentypen zu speichern. HTML-Formulare werden verwendet, um Daten an einen Server zu übergeben. VB- und C # -Formulare sind die Fenster, die für die Interaktion mit dem Benutzer verwendet werden. ___ answer9176223 ___

Ich nehme an, der einzige Weg, dies zu tun, ist, das Rendering in der Vorlage zu überschreiben. Sie sollten an Ihre Vorlagen-Entity %code% übergeben und sie beispielsweise so rendern:

%Vor%     
___ answer303366664 ___

Dies kann mithilfe der Option group_by gelöst werden:

%Vor%     
___ qstnhdr ___ Symfony 2 Forms-Entität Feldtyp-Gruppierung ___ tag123symfony ___ Symfony ist ein Open-Source-PHP-Webentwicklungsframework für PHP 5.5.9+, das sich auf einfache und schnelle Entwicklungszyklen konzentriert und hochmoderne Designmuster und Programmierphilosophien beinhaltet. Symfony sollte nicht mit Symphony CMS verwechselt werden. Dieses Tag sollte nicht für Fragen zu Symfony 1.x verwendet werden. Bitte verwenden Sie stattdessen das Symfony1-Tag. ___
Jonny 19.05.2015, 21:42
quelle
9

Ich nehme an, der einzige Weg, dies zu tun, ist, das Rendering in der Vorlage zu überschreiben. Sie sollten an Ihre Vorlagen-Entity MyBundle:Service übergeben und sie beispielsweise so rendern:

%Vor%     
jkucharovic 07.02.2012 12:24
quelle

Tags und Links