2016-03-27 16 views
0

içinde ayarlanan varsayılan özelliği geçersiz kılar. Kısa bir süre önce kodumun artık çalışmadığını fark ettim ve yanlış bir şey yapıp yapmadığımı veya Symfony3'te bir hata olup olmadığından emin değilim.Symfony3 formu, Varlık

yüzden ben Kullanıcıtürü ile varlık tel zaman isActive = 1

olarak yapıcı mülk isActive kümesine sahip bir varlık User var isActive özelliğinin aniden varsayılan değer 1 ama NULL,

değil İşte UserType benziyor nasıl

$user = new User(); 
    var_dump($user->getIsActive()); // gives 1 
    $form = $this->createForm(UserType::class, $user); 
    var_dump($user->getIsActive()); // gives 1 
    $form->handleRequest($request); 
    var_dump($user->getIsActive()); // gives NULL 

: işte öyle görünüyor nasıl

public function buildForm(FormBuilderInterface $builder, array $option) 
{ 
    $this->name($builder); 
    $this->isActive($builder); 
} 

Ve isActive özellik

trait IsActiveField 
{ 
    public function isActive(FormBuilderInterface $builder, array $options = []) 
    { 
     $defaultOptions = [ 
      'label' => 'word.is_active', 
      'choices' => ['word.no' => 0, 'word.yes' => 1], 
     ]; 

     $options = array_merge($defaultOptions, $options); 
     return $builder->add('isActive', ChoiceType::class, $options); 
    } 
} 

cevap

0

Bu sizin kullanıcının değişken $user adlı garip görünüyor ama createForm yönteminin ikinci argümanı bir $program değişkendir:

$user = new User(); 
$form = $this->createForm(UserType::class, $program); 
+0

laroslav Hey Bunu işaret ettiğin için teşekkürler, ama benim kötü kopyalama yapıştırma oldu. Sorun hala devam ediyor. Ben bundan bahsetmedim ama FOCRestBundle – undefinedman

+0

kullanarak ajax yoluyla gönderdiğimde bana geliyor Ve bu istekte hangi verileri gönderiyorsunuz? –

İlgili konular