Tôi đang cố gắng để có được Custom Routes làm việc trong ứng dụng Rails của tôi (Ruby 1.9.2 với Rails 3).Tạo các tuyến đường tùy chỉnh và các trang đăng nhập
Đây là cấu hình của tôi/routes.rb tập tin
match '/dashboard' => 'home#dashboard', :as => 'user_root'
devise_for :user do
get "/login", :to => "devise/sessions#new" # Add a custom sign in route for user sign in
get "/logout", :to => "devise/sessions#destroy" # Add a custom sing out route for user sign out
get "/register", :to => "devise/registrations#new" # Add a Custom Route for Registrations
end
Nhưng nộp mẫu đơn trên/login hoặc/đăng ký đi cho người dùng/sign_in và người dùng/sign_up. Làm cách nào để ngăn điều này xảy ra. Hoặc thậm chí tốt hơn hãy đảm bảo rằng theo mặc định tất cả các yêu cầu cho người dùng/sign_in, v.v, hãy chuyển đến các tuyến đường có liên quan chứ không phải các tuyến mặc định được tạo bởi Devise.
Ngoài ra làm cách nào tôi có thể làm cho biểu mẫu đăng nhập một phần để đưa nó vào bộ điều khiển bất kỳ? Để tôi có thể có Trang Đăng nhập trên trang chủ (chỉ mụC# home) chứ không phải trên người dùng/sign_in?
Tôi đang sử dụng Devise 1.1.3 với Rails 3 trên Ruby 1.9.2, trên Mac OSX Snow Leopard.
Cảm ơn!
Trong mã bạn đặt ": đường dẫn", trong văn bản bạn đã nói ": as", đã được sửa. – tokland
thông báo Devise 2.1.2 (phiên bản mới hơn) sử dụng số nhiều 'devise_for: users' – AJcodez
Cách tiếp cận này hoạt động, nhưng bạn đang bị mắc kẹt bằng cách sử dụng đường dẫn Devise mặc định như' new_user_session_path'. Để có được những người trợ giúp như 'login_path', bạn có thể đặt khối' devise_for: user do' mà OP có ngay bên dưới câu trả lời này, và bạn sẽ có được kết quả tốt nhất của cả hai thế giới. –