Я использую Symfony 1.4 и ORM в качестве Propel в своем проекте. Я настроил Settings.yml для защиты своей страницы. Но могу ли я сделать собственный вход/выход с помощью своих действий, расширяющих все функциональные возможности плагинов SfGuard. Я нашел одну статью в SymfonyLab, но недостаточно ясно.
Как создать собственный логин для пользователя sfGuard в Symfony?
comment
Можете ли вы более конкретно определить пользовательский вход/выход из системы - вы имеете в виду пользовательский шаблон для страницы входа или что-то другое?
- person richsage   schedule 11.11.2010
comment
Это как пользовательский шаблон для страницы входа. вместо входа в Symfonys по умолчанию вы хотите создать пользовательскую страницу входа.
- person Harish Kurup   schedule 11.11.2010
comment
Вы хотите изменить вид, выполнить другие действия входа/выхода или выполнить дополнительные действия входа/выхода? В зависимости от того, какая комбинация этих 3-х (или других) вещей влияет на ответ.
- person Jeremy Kauffman   schedule 11.11.2010
comment
в вашем приложении есть страница пользователя, которая дает пользователю возможность редактировать свою информацию. но для этого требуется логин, поскольку пользователь входит в систему, тогда он должен быть перенаправлен на страницу редактирования пользователя, иначе на страницу ошибки. Я хочу, чтобы этот логин был сделан настраиваемым, например, по шаблону и функционально.. т. е. в приведенном выше случае @jeremy выполнял различные действия входа/выхода из системы.
- person Harish Kurup   schedule 11.11.2010
Ответы (2)
Самый простой способ переопределить вид входа в систему sfGuard:
1) Создайте каталог с именем «sfGuardAuth» в вашем интерфейсном модуле:
mkdir apps/frontend/modules/sfGuardAuth
mkdir apps/frontend/modules/sfGuardAuth/templates
2) Скопируйте шаблоны по умолчанию из папки sfGuardPlugin в новый модуль
cp plugins/sfGuardPlugin/modules/sfGuardAuth/templates/* apps/frontend/modules/sfGuardAuth/templates
3) Отредактируйте новые файлы по своему вкусу.
4) Очистить кеш
./symfony cc
person
cvaldemar
schedule
11.11.2010
вы знаете, как настроить его из бэкэнда ?? например, если я создам обычную форму Symfony и отправлю ее в свое действие, контроллер должен проверить информацию для входа и создать сеанс.
- person Harish Kurup; 11.11.2010
не будет ли это новым изобретением действия входа в систему? Вы также можете легко переопределить действия, расширив sfGuardAuthActions в своих собственных модулях/sfGuardAuth/actions/actions.class.php — взгляните на BasesfGuardAuthActions.class.php в папке plugins/sfGuardPlugin/modules/sfGuardAuth/lib, чтобы узнать, какие действия для переопределения.
- person cvaldemar; 11.11.2010
Вы также можете отобразить форму входа в любом месте. У меня есть страница для регистрации или входа пользователей, поэтому я сделал что-то вроде:
$this->signin = новый sfGuardFormSignin();
то в представлении вы можете делать все, что хотите.
person
Chris
schedule
22.11.2010