Използвам FOSRestBundle и стандартни функционалности на формуляр Symfony2, за да създам REST API.
Имам дефиниция на формуляр като тази:
$builder->add('paid', 'checkbox', array(
'required' => false,
))
Чрез изпращане на данни през REST API във формат JSON с PATCH заявка мога успешно да превключвам данните между true и false:
{
"paid": true
}
съответно
{
"paid": false
}
Ако обаче данните се изпращат като application/x-www-form-urlencoded
, тогава мога да задам данните само на true, а не на false.
Това работи: paid=1
- запис с paid=false
е зададен на paid=true
.
Това се игнорира: paid=0
- запис с paid=true
остава paid=true
.
Вече обмислях да използвам тип избор вместо квадратче за отметка (което работи при тестово изпълнение), но това изглежда не е правилният начин.
Какво мога да опитам, за да работи правилно?