我想在ActiveAdmin中的用戶模型中添加名爲批准的member_action。我看着文檔,但一切都不一樣,我很困惑如何做到這一點。到目前爲止,我只是讓它顯示批准鏈接(旁邊的查看,編輯和刪除)。ActiveAdmin:用戶模型中的member_action「批准」
管理/ user.rb:
member_action :approve, method: :post do
user = User.find params[:id]
user.approve!
redirect_to admin_user_path(user), notice: "Approved!"
end
,並顯示鏈接:
actions defaults: true do |user|
link_to 'Approve',approve_admin_user_path(user)
end
型號/ user.rb:
def approve!
update(bio_validee: true)
end
當我點擊鏈接,我有一個路由錯誤:
No route matches [GET] "/admin/users/21/approve"
這裏什麼rake routes
不會(爲管理/用戶線路):
approve_admin_user POST /admin/users/:id/approve(.:format) admin/users#approve
batch_action_admin_users POST /admin/users/batch_action(.:format) admin/users#batch_action
admin_users GET /admin/users(.:format) admin/users#index
POST /admin/users(.:format) admin/users#create
new_admin_user GET /admin/users/new(.:format) admin/users#new
edit_admin_user GET /admin/users/:id/edit(.:format) admin/users#edit
admin_user GET /admin/users/:id(.:format) admin/users#show
PATCH /admin/users/:id(.:format) admin/users#update
PUT /admin/users/:id(.:format) admin/users#update
DELETE /admin/users/:id(.:format) admin/users#destroy
難道我做錯了什麼?我需要添加什麼? 此外,我不知道有沒有用GET,POST,或
member_action :approve, method: :post
PUT我真的不明白在這種情況下的差異。
是什麼'耙routes'說明了什麼? –
我使用什麼耙路線返回編輯我的帖子 –