我的网络应用中有PartsController
,效果非常好。它发送正确的数据进行查看,以便视图可以呈现图表/统计数据等等,并且一切都是完整的工作顺序。
现在我的应用程序中还有另一项功能,可以将部件组合到产品中。现在我有一个ProductController
我想要基本保留与零件控制器完全相同的行为,这意味着我想重用我的零件控制器中存在的视图,但只是发送不同的数据来查看。 PartsController
会发送一个数据,ProductController
会将其他数据发送到视图,但当然它们的类型相同。
最好的方法是什么?也许对于productcontroller来继承零件控制器?这是甚至可以在rails中覆盖控制器中的某些方法,但使用相同的视图?
答案 0 :(得分:1)
听起来你不想在PartsController
和ProductController
之间共享控制器逻辑,只是视图。如果是这样,将模板放在公共目录中,并在控制器中,执行此操作以呈现:
# imagine the templates are in app/views/products
render 'products/action_name'
如果您还想共享控制器逻辑,有几个选项:
include
共同的Module