我有三个models, controllers
和views
。
1. package
2. source
3. measure
一切都有单独的forms
。我创建了一个名为controller
的{{1}}和view
,并在scenario
页面中创建了三个tabs(Package, Source and Measure)
。
我需要scenario
render
来调用上述three tabs
和controller
views
中的每一个Package
应该执行create, edit, update and destroy of Packages controller
的操作和反之亦然。
如何在controller
页面中调用这三种不同的Scenario
操作?我希望所有三个人都进入单一页面并在他们的tabs
内工作。
我应该在Scenario控制器中的索引,新建,创建,编辑和更新方法中包含哪些内容?我是否还需要为场景创建所有视图文件?
任何帮助都会更受欢迎。
P.S。我测试了所有三个都与他们的单独页面正常工作。
答案 0 :(得分:0)
最好使用ajax调用,并使用js / erb模板在相应的选项卡中呈现视图模板。例如,
show.js.erb
$('<%= @selector %>').html("<%= escape_javascript(render(:action => :show)) %>");
如果你想使用同样的ajax调用在其他地方渲染show动作,那么根据你所在的页面发送一个选择器作为请求参数:例如,当你在场景页面上时,包标签的div id是说'package-tab',然后将选择器'#package-tab'
作为参数发送,并在控制器中将@selector设置为此值。有了这个,你可以从请求控制哪个dom-element被ajax调用刷新。
这回答了这个问题吗?