symfony - sfDoctrineGuardPlugin - создание пользовательских пользователей - PullRequest
0 голосов
/ 03 мая 2011

Я использую sfDoctrineGuardPlugin и сталкиваюсь с небольшой проблемой.

У меня есть несколько «типов пользователей», то есть Admins, Managers, Account Holder.

Мне нужно иметь возможность создавать этих пользователей и иметь конкретные формы для каждого типа при их создании.

Что я действительно хотел бы сделать, так это возможно иметь ссылку на что-токак Create Admin, Create Manager и Create Account Holder, которые хотели бы создать форму для пользователя, которого я пытаюсь создать.

Нужно ли мне создать несколько действий в плагине, чтобы приспособиться к этому, т.е.executeAdmin(), executeManagers, а затем вызвать пользовательскую форму, которую настроили мои конкретные виджеты?

Спасибо

Ответы [ 2 ]

0 голосов
/ 03 мая 2011

Если вы хотите использовать admingen, я рекомендую вам создать 3 модуля на основе модели os sfguarduser, по одному на тип пользователя.
Затем в каждом файле generator.yml вы можете указать в блоке формы:

форма:

класс: adminForm (для примера)

0 голосов
/ 03 мая 2011

Вы можете определить эти типы пользователей как подклассы класса sfGuardUser. Тогда у вас будет одна форма для каждого типа, наследуемая от sfGuardUserForm.

В вашем модуле вы либо создаете действие для каждого типа, если какой-то контроллер и код шаблона очень специфичны, либо вы создаете одно действие с проверкой какого-либо параметра на использование правильного класса формы.

Да, и не добавляйте код к плагину. Это очень плохая практика. Вместо этого расширяет действие плагина в пользовательском модуле вашего приложения.

...