Я пытаюсь указать значение по умолчанию в форме, поэтому при создании объекта поле формы имеет значение (но не пустое или пустое). Однако, когда объект редактируется, он должен явно отображать сохраненное значение, а не значение по умолчанию.
Моя сущность инициализирует себя как часть конструкции – поэтому, когда объект является новым и еще не сохраняется, эти значения должны быть установлены.
Как сообщить FormType, чтобы использовать значение по умолчанию в постоянном состоянии? Все, что я пытаюсь, кажется, предполагает, что это одно или другое не то, и другое?
Как это делается Symfony 3.2 + ???
EDIT |
контроллер:
public function newAction (Request $request) { $quoteItem = new QuoteItem(); $form = $this->createForm('UniflyteBundle\Form\QuoteItemType', $quoteItem, ['allow_extra_fields' => true]); $form->add('QuoteFlight', QuoteFlightType::class); }
Тип формы:
public function configureOptions (OptionsResolver $resolver) { $resolver->setDefaults([ //'data' => new \UniflyteBundle\Entity\QuoteFlight() 'data_class' => QuoteFlight::class ]); } public function buildForm (FormBuilderInterface $builder, array $options) { $builder ->add('specMajorSetupCharge', null, [ //'empty_data' => QuoteFlight::SPEC_MAJOR_SETUP_CHARGE, 'data' => QuoteFlight::SPEC_MAJOR_SETUP_CHARGE, 'label' => '* Setups Charge' ]) // ... }