Я использую Rails 3 и Devise.
У меня может быть 2 типа пользователей, которых я называю «admin» и «client», оба хранятся в таблице Users, различаются по значениюлогический столбец «admin».
«Администратор» может быть создан 2 способами:
1) При создании новой учетной записи - в этом случае мы также создаемсвязанная «деловая» запись
2) из существующей учетной записи (так что одна «бизнес» может иметь несколько «администраторов») - в случае, если мы хотим связать ее с существующей бизнес-записью
«Клиент» может быть создан 1 способом:
1) Из формы, отличной от тех, которые использовались для создания «администратора» выше
Вво всех 3 случаях будет использоваться другая форма.И после отправки у них у всех разные требования:
- Я хочу отправить разные электронные письма каждому.
- В первом случае «admin», указанном выше, мне нужно проверить, является ли запрошенный бизнес-URL уникальным, во втором - нет.И в случае клиента я не.
- В первом случае «admin» я хочу создать некоторые записи базы данных по умолчанию после завершения учетной записи, но не во втором случае.
- Когда создается учетная запись «клиента», я хочу выполнить некоторые другие действия, специфичные для этого типа учетной записи.
Должен ли я использовать один и тот же контроллер для разных типов пользователей или отдельноих?Если они должны быть одинаковыми, как он узнает, какого типа пользователя он должен создать?
А как насчет моделей?
Есть мысли о том, как это сконструировать?
Большое спасибо.