У меня есть класс Measure с логическим свойством с именем "isShared"
/**
* @ORM\Entity(repositoryClass="App\Repository\MeasureRepository")
* @UniqueEntity("name", message = "This value is already used")
*/
class Measure
{
/**
* @ORM\Id
* @ORM\GeneratedValue
* @ORM\Column(type="integer")
*/
private $id;
/**
* @ORM\Column(name="is_shared", type="boolean")
*/
private $isShared;
}
И форма, в которой значение значения свойства isShared должно быть изменено с помощью флажка.
class MeasureType extends AbstractType
{
public function buildForm(FormBuilderInterface $builder, array $options)
{
$builder
->add('isShared', CheckboxType::class, array(
'required' => false,
'label' => 'Shared',
'attr' => array(
'data-on-color' => 'primary',
'data-off-color' => 'default'
)
));
}
Проблема в том, что отображаемый html всегда
<input type="checkbox" id="measure_isShared" name="measure[isShared]" data-on-color="primary" data-off-color="default" value="1" /> Shared</label>
без учета значения свойства в объекте.Когда я передаю в форму объект Measure со свойством isShared, установленным в false, значение ввода всегда равно 1.
Что я делаю неправильно?Спасибо!