Нет имени пользователя?sfDoctrineGuard / Применить - PullRequest
1 голос
/ 04 апреля 2011

Я использую sfDoctrineApplyPlugin, а в регистрационной форме требуется имя пользователя - как лучше всего удалить это поле?

Поскольку sfDoctrineGuardPlugin позволяет входить через имя пользователя или адрес электронной почты, я бы хотел, чтобы мое приложение использовало адрес электронной почты только для идентификации пользователей. Оформление указания имени пользователя при регистрации в избытке к требованиям.

Нужно ли мне скрывать это поле от представления, а затем при отправке генерировать имя пользователя, которое хранится для удовлетворения плагинов, но пользователю никогда не нужно видеть или использовать? Какой лучший способ создать это? Бит перед @ в адресе электронной почты?

Большое спасибо за любую помощь заранее.

1 Ответ

3 голосов
/ 04 апреля 2011

Я думаю, вы могли бы начать здесь 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);
  }
}
...