У меня проблема с тем, что моя форма не отображается из-за ошибки
Невозможно преобразовать значение для пути свойства "beide": ожидается логическое значение.
Таким образом, я следовал нескольким решениям по stackoverflow, но не получил его на работу.
В моей таблице mysql поле "beide" является tinyint.
Entity:
/**
* @var bool
*
* @ORM\Column(name="beide", type="boolean", nullable=true)
*/
private $beide = false;
/**
* getBeide
*
* @return bool|null
*/
public function getBeide(): ?bool
{
return (bool) $this->beide;
}
/**
* setBeide
*
* @param bool|null $both
*
* @return $this
*/
public function setBeide(?bool $both)
{
$this->beide = (bool) $both;
return $this;
}
FormClass:
->add(
'beide',
CheckboxType::class,
[
'required' => false,
'value' => false,
'label' => 'für beide *',
'data' => $both,
]
)
public function configureOptions(OptionsResolver $resolver)
{
$resolver->setDefaults(
[
'data_class' => Asset::class,
'category_list' => [],
'create_date' => new DateTime(),
]
);
}
Контроллер:
/**
* @param Request $request
*
* @return \Symfony\Component\HttpFoundation\Response
*/
public function saveNewAssetAction(Request $request)
{
$data['categoryList'] = $this->categoryList;
$asset = new Asset();
dump($asset);
$assetForm = $this->createForm(
AssetSingleType::class,
$asset,
[
'method' => 'POST',
'category_list' => $this->categoryList,
'data' => $asset,
]
);
И здесь уже выдается исключение.
У меня тот же результат, если я установил
private $beide = 0;
, как это работало для других.
Что я пропустил или испортил?
Я уже проверил следующие решения:
логическое поле symfony в форму
Невозможно преобразовать значение для пути свойства: ожидается логическое