1

我做了这样的会员操作:

member_action :send_by_email, :method => :get

它应该执行 Admin::CardsController/send_by_email 但它不是,我不启动控制器操作。

我的文件是 app/controllers/admin 中的 cards_controller.rb

class Admin::CardsController < ApplicationController
    def send_by_email
       raise "ok"
    end
end

当我做 rake 路线时,我得到了:

 send_by_email_admin_card GET        /admin/cards/:id/send_by_email(.:format) admin/cards#send_by_email

任何想法?

4

2 回答 2

1

你凌驾于你的工作之上。

如果你在 Admin::CardsController 中定义一个动作,你所做的与使用 member_action 定义它是一样的。

推荐的方法是使用 member_action 定义管理资源控制器操作,而不是在其控制器中挖掘。

于 2015-06-24T08:55:15.183 回答
0

要进一步调试,请尝试以下操作:

member_action :send_by_email do
  raise "ok" #assuming that works, I use puts statements but whatev.
end

我发现我必须把我所有的“东西”都放在app/admin/cards.rb

于 2012-09-16T17:17:20.287 回答