Helpex - Trao đổi & giúp đỡ Đăng nhập
5

Tôi đang cố gắng tạo một hành động sẽ kiểm tra mọi trang nếu người dùng đã đăng nhập. Đối với điều đó, trong bộ điều khiển, Hometôi đã tạo phương pháp này:

def check_session
  if !session[:user_id]
    redirect_to :action=> 'login'
  end
end

Và tôi đã đặt mã này ở đầu bộ điều khiển:

before_filter :check_session, :except => [:sub_layout, :authenticate, :login]

Bây giờ tôi muốn sử dụng check_sessiontừ bên ngoài các trang của Home, giả sử trong các trang của Users. Cú pháp chính xác để gọi một phương thức của một bộ điều khiển khác trong before_filter?

5 hữu ích 0 bình luận 3.1k xem chia sẻ
7

Nếu bạn di chuyển mọi thứ bạn đã có vào application_controller, nó sẽ kiểm tra mọi bộ điều khiển trong ứng dụng của bạn. Sau đó, sử dụng phương thức: ignore_before_filter để bỏ qua việc kiểm tra bất kỳ bộ điều khiển / hành động nào bạn muốn.

7 hữu ích 5 bình luận chia sẻ
loading
Không tìm thấy câu trả lời bạn tìm kiếm? Duyệt qua các câu hỏi được gắn thẻ ruby-on-rails ruby before-filter , hoặc hỏi câu hỏi của bạn.

Có thể bạn quan tâm

loading