我的Rails应用有活动和用户。在ActiveAdmin中,可以通过表单操作编辑事件。如果编辑包括将用户附加到事件,我需要向该用户发送消息。我想我需要自定义更新操作或在我的事件模型中的:after_update
回调中触发消息发送。
我认为添加回调更有意义,但我很好奇是否可以在ActiveAdmin中自定义更新操作。是吗?
答案 0 :(得分:1)
您可以编辑ActiveAdmin控制器操作,但是如果更新后执行的操作在更新管理面板外部的表单时相同,那么我认为最好使用回调。为什么要写更多代码?
http://activeadmin.info/docs/8-custom-actions.html#modify_the_controller
ActiveAdmin.register Post do
controller do
# This code is evaluated within the controller class
def define_a_method
# Instance method
end
end
end
答案 1 :(得分:0)
这绝对有可能,在您的ActiveAdmin模型中添加:
controller do
def update_resource(object, attributes)
attributes.first[:your_attribute] = ...
object.send(:update_attributes, *attributes)
end
希望它有所帮助!