2014-12-18 22 views
8

Điều này có thể rất đơn giản và tôi đang xem nó. Tôi đang sử dụng các chức năng có thể khóa được và tôi muốn tạo một nút mà quản trị viên có thể kiểm tra để mở khóa người dùng bị khóa.Nút Mở khóa Phát triển trong Chế độ xem

Devise có phương thức mô hình có tên là unlock_access!. Tôi đang cố gắng gọi nó trong phương pháp điều khiển của người dùng của tôi với một nút trong các khung nhìn.

Xem:

= link_to('unlock', user_unlock_path(user), method: :post, class: 'button-xs') unless user == current_user 

users_controller.rb:

def unlock 
    user = User.find(params[:id]) 
    user.unlock_access! 
end 

đường

resources :users do 
    post 'unlock' 
end 

Trả lời

8

I figured it out.

Bạn phải cập nhật tuyến đường của mình để gọi phương thức trên một thành viên. Đã cập nhật các khung nhìn và bộ điều khiển bằng mã làm việc.

tuyến

resources :users do 
    post :unlock, :on => :member 
end 

cập nhật điều khiển

def unlock 
    user = User.find(params[:id]) 
    user.unlock_access! 
    redirect_to users_path 
end 

tin được cập nhật

= link_to(t('common.unlock'), unlock_user_path(user), method: :post, class: 'button-xs') unless user == current_user 
+0

tôi sẽ sử dụng phương pháp vá (đặt một f hoặc phiên bản cũ của đường ray) thay vì bài đăng. –

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