2010-11-04 40 views
14

hiện với đưa ra & ray 3 có một trang người dùng chỉnh sửa trang:/users/chỉnh sửadevise - Tùy chỉnh tài khoản Chỉnh sửa trang

Tôi muốn chia mà ra thành nhiều phần cho một giao diện người dùng tốt hơn, một cái gì đó như:

/account/settings 
/account/password 
/account/notices 
/account/disable 

Ngoài ra, tôi muốn yêu cầu người dùng nhập mật khẩu hiện tại của họ khi người dùng muốn thay đổi mật khẩu của họ.

Với suy nghĩ, để thực hiện điều này, điều này có yêu cầu bộ điều khiển mới hay tất cả điều này có thể được xử lý bằng tuyến đường không?

Ngoài ra, hiện nay, trang chỉnh sửa sống ở đây: app/views/đưa ra/đăng ký

Bạn có khuyên bạn nên thêm các trang này không? Hoặc trong/app/views/users?

Cảm ơn

Trả lời

15

Bạn có nhiều tùy chọn tại đây. Tôi sẽ đi với các tùy chọn đầu tiên vì nó có vẻ tự nhiên phù hợp với những gì bạn đang cố gắng để làm.

  1. Ghi đè bộ kiểm soát đăng ký của nhà phát triển bằng cách kế thừa từ đó và cập nhật các chế độ xem và tuyến đường tương ứng. Đây là những gì devise của site nói về điều này:

    Cấu hình bộ điều khiển

    Nếu tùy vào quan điểm mức là không đủ, bạn có thể tùy chỉnh mỗi bộ điều khiển bằng cách làm theo những bước sau:

    1) Tạo bộ điều khiển tùy chỉnh của bạn, cho ví dụ một Quản trị viên :: SessionsController:

    Admins lớp :: SessionsController < lập mưu :: SessionsController cuối

    2) Cho router để sử dụng điều khiển này:

    devise_for: quản trị viên,: Bộ điều khiển => {: buổi => "quản trị viên/buổi" }

    3) Và kể từ khi chúng tôi thay đổi bộ điều khiển , nó sẽ không sử dụng "đưa ra/buổi" xem , vì vậy hãy nhớ để sao chép "đưa ra/phiên" để "admin/buổi".

    Hãy nhớ rằng Devise sử dụng flash tin nhắn để cho người dùng biết nếu đăng nhập thành công hoặc không thành công. Devise yêu cầu ứng dụng của bạn gọi tới số "flash [: notice]" và "flash [: alert]" nếu thích hợp.

  2. Sử dụng bộ điều khiển người dùng và thêm các hành vi có tương ứng với quan điểm (không tôi lựa chọn)

Các vấn đề liên quan