2016-07-19 9 views
-1

以下のコードからユーザ名とパスワードのフィールドにアクセスする方法を使いたいと思います。symfony 3のフォームデータからフィールドにアクセスする方法

AppBundle\Entity\MasterUserAccount Object 
(
    [id:AppBundle\Entity\MasterUserAccount:private] => 
    [firstName:AppBundle\Entity\MasterUserAccount:private] => 
    [lastName:AppBundle\Entity\MasterUserAccount:private] => 
    [username:AppBundle\Entity\MasterUserAccount:private] => test 
    [password:AppBundle\Entity\MasterUserAccount:private] => 123456 
    [createdBy:AppBundle\Entity\MasterUserAccount:private] => 
    [updatedBy:AppBundle\Entity\MasterUserAccount:private] => 
    [createdAt:AppBundle\Entity\MasterUserAccount:private] => 
    [updatedAt:AppBundle\Entity\MasterUserAccount:private] => 
    [status:AppBundle\Entity\MasterUserAccount:private] => 
) 

$data = $form->getData(); 

$username = $data['username']; 

私は次のエラー

あなたはsymfonyのから抜け出す配列

答えて

1

dataようなタイプAppBundle \エンティティ\クラス名のオブジェクトを使用することはできません以下のエラーを取得していますフォームはEntityです。配列の場合と同じように、このエンティティの属性にアクセスすることはできません。

代わりに、クラスMasterUserAccountに定義されているゲッターメソッドを使用している必要があります。

So.それは次のようになります。

$username = $data -> getUserName(); 

これはgetterメソッドがすでにMasterUserAccountクラス内で定義されていることを想定しています。そうでない場合は、最初にゲッターメソッドを作成します。

+0

ありがとうございます。それは正しく機能しました。私は感謝します。 – user1965773

関連する問題