2017-06-05 83 views
0

這是我用來顯示在頁面中提交的代碼。定義默認選擇,如果沒有數據在DB - Symfony實體類型

我需要某種方式來預定義默認選中,如果沒有數據。 有什麼建議嗎?

->add('period', EntityType::class, [ 
      'required' => false, 
      'empty_value' => false, 
      'expanded' => true, 
      'class' => 'MainBundle\Entity\NotificationsPeriod', 
      'query_builder' => function (EntityRepository $er) { 
       $qb = $er->createQueryBuilder('u'); 
       $qb->orderBy('u.id', 'ASC'); 
       $qb->add('where', $qb->expr()->notIn('u.id', 1)); 
       return $qb; 
      }, 
      'empty_data' => 2, 
     ]) 

回答

0

你快到了!

您需要設置您的empty_data參數,因爲您必須匹配HTML中的值。

例如:

//formClass.php 
'empty_data' => 2, 

然後..

//template.twig 
<select name="whatever"> 
    <option value="2">Something</option> 
    {# build your options from data.. #} 
</select> 

官方文檔是在這裏:http://symfony.com/doc/current/reference/forms/types/choice.html#empty-data

相關問題