2016-12-17 9 views
2

ユーザー設定パネルを作成します。Symfony3 "オプション"プレースホルダ "は存在しません。

フォームでは、ユーザーが現在の値でプレースホルダを持ちたいと思います。

オプション「プレースホルダ」は存在しません:私は、ブラウザにこのエラーが出るような値を使用して

//... 

$form = $this->createFormBuilder($user) 
      ->add('Username', TextType::class, array(
       'label' => "Change UserName", 
       'placeholder' => $userData[0]->getUsername() 
      )) 
//... 

:ここ

は、サンプルコードです。"action"、 "allow_extra_fields"、 "attr"、 "auto_initialize"、 "block_name"、 "by_reference"、 "compound"、 "constraints"、 "csrf_field_name"、 "csrf_message"、 "csrf_protection" 、 "csrf_token_id"、 "csrf_token_manager"、 "データ"、 "data_class"、 "無効"、 "empty_data"、 "error_bubbling"、 "error_mapping"、 "extra_fields_message"、 "inherit_data"、 "invalid_message"、「invalid_message_parameters " " label "、" label_attr "、" label_format "、" mapped "、" method "、 " post_max_size_message "、" property_path "、" required "、 " translation_domain "、" trim "、" upload_max_size_message "、 "validation_groups"

'data' => $userData[0]->getUsername()が正しく動作し、正しい情報を表示するため、この問題はパラメータ自体にのみ発生します。

は、ここに私のページを使用するパラメータです:

namespace AppBundle\Controller; 

use Sensio\Bundle\FrameworkExtraBundle\Configuration\Route; 
use AppBundle\Entity\Task; 
use Symfony\Bundle\FrameworkBundle\Controller\Controller; 
use Symfony\Component\Form\Extension\Core\Type\TextareaType; 
use Symfony\Component\HttpFoundation\Request; 
use Symfony\Component\Form\Extension\Core\Type\TextType; 
use Symfony\Component\Form\Extension\Core\Type\SubmitType; 
use AppBundle\Entity\Post; 
use AppBundle\Entity\User; 

答えて

10

placeholderは、HTML属性です。

$form = $this->createFormBuilder($user) 
     ->add('Username', TextType::class, array(
      'label' => "Change UserName", 
      'attr' => array(
       'placeholder' => $userData[0]->getUsername() 
       ) 
      ) 
     ) 
+0

チャームのように働いていただきありがとうございます。D – aln447

+0

オプション "type"は存在しません。 – mobizen

関連する問題