[英]Symfony2 FOSRest set value to null
在使用Symfony2構建的Web應用程序中,我需要能夠將null
值作為PUT
或PATCH
請求的一部分發送到FOSRestBundle端點。 例如{ "available": null }
。 數據庫字段是可以為nullable
boolean
類型,由Doctrine設置。 因此,實際上,該值必須能夠為1, 0 or null
(即未知)。 但是,發送null
值似乎被忽略了。 這可能是Symfony2表單或FOSRest的問題。 我嘗試將empty_value => null
和empty_data => null
到表單中,但似乎沒有任何效果。 知道是否有允許接受null
作為選項的設置?
Boolean通常為true或false,如何確定它是未選中的,因為它為null或未選中,因為它為false,無論是否為false。 因此,如果你想要3個選擇,最好使用選擇字段而不是復選框,使用(選擇,是,否)和值(null,1,0)。
你可以檢查這個,但我認為它不會有多大幫助https://github.com/symfony/symfony/issues/10364
嘗試在您的配置中設置:
fos_rest:
serializer:
serialize_null: true
也許您可以嘗試發送一個字符串“0”,“1”或“null”的虛擬屬性,並將其公開為您的其他屬性的名稱。
在DB設計時將默認值設置為NULL並在使用查詢插入時忽略該字段,它將自動插入NULL。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.