在new / create之后触发控制器操作

时间:2015-09-25 18:49:10

标签: ruby-on-rails

Rails 3.2.18
Ruby 2.1.5

在我的控制器中,我有新的和创建方法。我在控制器中有另一个方法,让我们称之为post_create,我想在create方法完成执行后自动触发。此方法没有与之关联的视图,它应该更新表。

我试过

after_filter :post_create, only:[:create]

但我需要传递给create方法的参数,此时我不再拥有它们。有什么想法吗?

2 个答案:

答案 0 :(得分:0)

可以这样做: -

if ([f, g, h].every((v, i, a) => 
  v === a[0] &&
  v !== null
)) {
  // Do something
}

注意: - 通过在控制台中输入def create #code redirect_to post_create_path(parameter) end def post_create #update the table redirect_to desired_path end 来了解路径来设置路径。

答案 1 :(得分:0)

你会在after_action中得到params。如果不是这样的话。您可以在观察者中执行此类操作。如果这不会影响您的新视图。然后你应该去观察者而不是创建一个after_action。对于mor详细检查here