【发布时间】:2015-04-30 15:38:56
【问题描述】:
我有两个共享相似输入参数的表单/视图;但是每个视图都应该由单独的控制器处理,因为每个视图都需要额外的逻辑。每个控制器都有大量与之相关的输入参数。最佳做法是什么?
我知道这个问题听起来像是“在控制器之间共享变量”的事情;但是如果我使用 before_filter 方法;我必须再次从表单中声明每个输入参数。如果我在父应用程序控制器中定义了一个新方法或者创建了一个用于输入参数提取的辅助方法;子控制器中的其他方法无法访问变量...有没有更优雅的解决方案?
【问题讨论】:
-
我很确定,如果您在应用程序控制器中定义一个方法,它的变量是可访问的。只要在每个控制器中声明了 before_action,我一直有一个跨控制器定义 @current_user 的方法而不会发生意外。
标签: ruby-on-rails variables parameters dry controllers