簡體   English   中英

Symfony2 FOSRest將值設置為null

[英]Symfony2 FOSRest set value to null

在使用Symfony2構建的Web應用程序中,我需要能夠將null值作為PUTPATCH請求的一部分發送到FOSRestBundle端點。 例如{ "available": null } 數據庫字段是可以為nullable boolean類型,由Doctrine設置。 因此,實際上,該值必須能夠為1, 0 or null (即未知)。 但是,發送null值似乎被忽略了。 這可能是Symfony2表單或FOSRest的問題。 我嘗試將empty_value => nullempty_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.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM