Как я могу разделить действия между двумя учетными записями?чтобы каждая учетная запись могла просматривать только определенный набор действий на одном контроллере?
Существует ли простой способ перенаправить неправильную учетную запись на конкретное представление?
Вот мой сценарий:
Я создал два типа учетных записей:
Существует контроллер, который оба типа учетных записей могут посещать определенные действия наэто:
class CoursesController < ApplicationController
# instructors are allowed to view all action's views, except :browse_courses, :register_course
before_filter :authenticate_instructor!,
:except => [:browse_courses, :register_course]
# students are allowed to view only :browse_courses, :register_course
before_filter :authenticate_student!,
:only => [:browse_courses, :register_course]
...
но, как ни странно, иногда, когда я захожу в действие редактирования на контроллере выше с использованием учетной записи инструктора, devise будет запрашивать аутентификацию ученика, ипредставление редактирования не будет отображено, хотя инструктор может просматривать редактирование
Обратите внимание, что before_filter :authenticate_student!
утверждает, что: only => [: browse_courses,: register_course] должен быть аутентифицирован для учетной записи студента, поэтому, почемудействие редактирования тоже аутентифицируется для студента?(на нем будет виден знак студента)
Правильно ли указан код выше?или есть лучший подход к этой проблеме?