mundeck
14.09.2016, 15:23:32
Chcę zrobić formularz z polem typu <select>, korzystyam z EntityType, żeby zaciągnąć dane do elementów <option>, ale chciałbym, aby dwa początkowe elementy były customowe, np. "-- wybierz opcję --" i "-- nowy --". Nie wiem jak to zrobić. Zastanawiam się nad modyfikacją "query_builder" tak żeby dołączyć tam jakiś wirtualny rekord czy coś w tym rodzaju, ale to chyba nie jest najlepsze rozwiązanie. Myślalem też o tym, by zamienić EntityType na ChoiceType, ale wtedy nie widzę możliwości, aby zaciągnąć entity do pozostałych opcji. Rozważałem też, czy da się to dodać w Twigu, ale też jakoś nie widzę takiej opcji. Jedyne, co na razie potrafiłbym zrobić, to dołożenie tego przez jquery, ale to jest dość słaby pomysł.
kpt_lucek
14.09.2016, 18:38:17
W property choices możesz wstawić już pobrane opcje, więc możesz do nich dostawić customowy typ.
W praktyce nie wiem jak zadziała takowe rozwiązanie, bo nigdy nie testowałem, ale możliwość jest i może nakieruje Cię to na odpowiedź.
mundeck
27.09.2016, 22:56:15
OK, poradziłem sobie z tym za pomocą metody finishView(), która pozwala na dodanie własnych opcji. Z tym że tutaj zaczyna się nowy problem, bo co z tego, że mam opcję z value="new", skoro takiej wartości nie ma (to jest EntityType, a więc ma tylko id wzięte z bazy) i formularz nie przechodzi walidacji.
lukaskolista
28.09.2016, 11:24:21
Bo typ entity nie służy do dodawania własnych opcji. Jak chcesz zrobić dodawanie obiektów bdo bazy, to zrób do tego osobny formularz.
To jest wersja lo-fi głównej zawartości. Aby zobaczyć pełną wersję z większą zawartością, obrazkami i formatowaniem proszę
kliknij tutaj.