1

sfDoctrineApplyPlugin を使用していますが、登録フォームにはユーザー名が必要です。このフィールドを削除する最良の方法は何ですか?

sfDoctrineGuardPlugin はユーザー名または電子メール アドレスによるログインを許可するため、アプリケーションで電子メール アドレスを使用してユーザーを識別するためだけに使用したいと考えています。登録時にユーザー名を指定することを要件に加えます。

このフィールドをビューから非表示にし、送信時に、プラグインを満たすために保存されているユーザー名を生成する必要がありますが、ユーザーは表示または使用する必要はありませんか? これを生成する最良の方法は何ですか?メールアドレスの@の前のビット?

事前に助けてくれてありがとう。

4

1 に答える 1

3

ここから始めることができると思いますSymfony: プラグインのスキーマで「notnull:true」をどのように逆にしますか? . そして、あなたはこれを行うことができます:

class sfGuardUserForm extends PluginsfGuardUserForm
{
  protected function doUpdateObject($values)
  {
    $email_array = explode($values['email']);
    $this->getObject()->set('username', $email_array[0]);

    parent::doUpdateObject($values);
  }
}
于 2011-04-04T13:15:01.673 に答える