簡體   English   中英

Symfony2和FormBuilder:如何獲取在生成器中添加的elemetns編號

[英]Symfony2 and FormBuilder: How to get the elemetns number added in the builder

我有一個formbuilder,其中我要從實體中添加一些值:

$builder->add('affiliation', 'entity', array(
    'class' => 'SciForumVersion2Bundle:UserAffiliation',
    'multiple' => true,
    'expanded' => true,
    'query_builder' => function(EntityRepository $er) use ($author,$user) {
     return $er->createQueryBuilder('ua')
        ->where("ua.user_id = {$user->getId()}")
        ->andWhere("ua.affiliation_id not in ( select pa.affiliation_id FROM SciForumVersion2Bundle:PersonAffiliation pa where pa.person_id = {$author->getPersonId()} )");
     },
     'required'  => true,
));

在我的控制器中,我想檢查表單中是否有內容。 如果有,我將顯示一個視圖,如果沒有,則將顯示另一視圖。

這可能嗎?如果可以,怎么辦?

謝謝。

只需嘗試:

$data = $form->getData()

函數getData()文檔

如果要以表單類型獲取當前數據(僅在呈現表單之后),則可以使用每種表單類型提供的標准builder

它與普通表單響應完全一樣,因此您可以使用:

$builder->getData();

並使用if子句根據要生成的內容添加不同的字段。

暫無
暫無

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

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