簡體   English   中英

Symfony2在表單提交/驗證后設置Entity屬性

[英]Symfony2 set Entity property after form submit/validation

我正在提交一個symfony2表單,如果該實體的電子郵件字段未填寫且該屬性已提交為“true”,我想將某個Entity屬性設置為false。

我現在這樣做:

$myForm = $this->createForm(new FormType(), $myEntity);

$myForm->handleRequest($request);
if ($myForm->isValid()) {
    if (!$myEntity->getEmail()) {
        $myEntity->setProperty(false);
    }
}

我現在希望在提交表單后顯示與該屬性對應的復選框。 但是表單中的屬性復選框沒有響應,它保持檢查狀態。

有誰知道如何正確地做到這一點?

我認為這是因為您的表單已經綁定到實體。 表單已獲取實體的數據,並且在實體更改時不會更新。 您可以直接在表單上操作:

$myForm['someProperty']->setData( false );

但我希望按照你的第一行再次完全重建表格是更好的做法。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

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