Когда я использую функцию choice_value для исключения некоторых данных из моего выбора, если поле пустое, в базе данных устанавливается значение, но не «NULL».это значение является первой записью моей сущности.Когда я перечисляю все данные, если поле пустое, в базе данных устанавливается значение «Null».
Есть идеи?
public function buildForm(FormBuilderInterface $builder, array $options)
{
$this->currentId = $options['currentId'];
$builder
->add('oldOwners', entityType::class, array(
'class' => OldOwners::class,
'required' => false,
'empty_data' => null,
'multiple' => false,
'choice_value' => function (OldOwners $oldOwners = null) {
if ($oldOwners != null && $oldOwners != '') {
if ($this->currentId != 0 && $oldOwners->animal->getId() == $this->currentId)
return $oldOwners->getDateDisposal()->format('Y-m-d');
}
},
'choice_label' => function (OldOwners $oldOwners = null) {
if ($oldOwners != null && $oldOwners != '') {
if ($this->currentId != 0 && $oldOwners->animal->getId() == $this->currentId)
return $oldOwners->getDateDisposal()->format('Y-m-d');
}
},
'label' => "Date"));
/**
* @param OptionsResolver $resolver
*/
public function configureOptions(OptionsResolver $resolver)
{
$resolver->setDefaults([
'data_class' => Adopting::class,
'currentId' => null,
]);
$resolver->setRequired('currentId');
}