我需要在对象保存到数据库之前对其执行一些额外的逻辑。我假设使用before_filter是完成此操作的正确方法,但我不确定如何将要保存的对象传递给我的before_filter方法。
答案 0 :(得分:1)
这是我在这里发表的第一篇文章,所以对我来说很容易!
至少在Rails 3中有一个before_save方法,可以在模型中调用。 在帖子模型中
before_save :add_url_and_ID
def add_url_and_ID
#extra logic
self[:url] = whatever.com
self[:member_id] = member.id
end
我可能会离开,但它是我的第一次去!
答案 1 :(得分:0)
这对我来说听起来像模型代码。要充分利用Rails(或任何MVC框架),请遵循'Fat Models,Skinny Controllers'的经验法则。它可能会走得太远,但我认为在这种情况下它非常清楚。如果您提到的辅助函数存在错误,那么保存操作是否应该失败并显示相应的错误消息?
在这个主题上有很多关于SO的好帖子。 Here's one
如果这不足以让我使用,我建议发布一些代码。