1

コミュニティ、

FosUserBundle を使用していますが、ユーザー名に問題があります。

マイページでは、メールアドレスとパスワードのみが必要です。=>ユーザー名を使用できます! (そのため、エンティティの setEmail() 関数を setUsername($email) でオーバーライドできませんでした ^^

私の構成でこれを使用すると、次のエラーが発生します。

fos_user:
    registration:
        form:
            validation_groups: [AppRegistration]

エラー:

SQLSTATE[23000]: Integrity constraint violation: 1048 Column 'username' cannot be null 

私に何ができる?

前もって感謝します!

4

2 に答える 2

5
# app/config/security.yml
security:
    providers:
        fos_userbundle:
            id: fos_user.user_provider.username_email

security.yml を変更して、fosuserbundle がユーザー名または電子メールによるロギングから電子メールをユーザー名として受け入れるようにし、ユーザー名を空にすることはできないため、setUsername メソッドを上書きするようにします。例えば

public function setEmail($email){
    parent::setEmail($email);
    parent::setUsername($email);
}
于 2013-06-29T03:58:59.990 に答える