0

相当新Rails。我正在尝试创建一个更新两个模型并输出到两个单独的显示页面的表单。一,这可能吗,二,怎么做?我看到很多关于一个表单能够更新多个模型的帖子,但不确定我是否可以拥有一个创建两个单独页面的表单。

编辑:

感谢到目前为止的评论。并且,对于缺乏明确性感到抱歉。基本上我有两个模型。一个是“课程预览”页面。第二个是“实际课程”。任何用户都可以查看预览页面,但必须购买课程才能查看课程页面。

我要做的是使用 1 个表单同时创建“课程预览”和“课程”。

提前致谢!

4

1 回答 1

0

您不能一次呈现两个页面,用户一次只能看到一个页面。

但是您可以使用一些巧妙的编码创建一个显示结果的页面。如果您有两个模型,例如 Model1 和 Model2,并且每个模型都有一个视图,例如 model1/show.html.erb,您可以将 show.html.erb 代码更改为:

<%= @model.name %>
etc...

<%= render 'display' %>

创建一个名为 _display.html.erb 的文件,并将 show.html.erb 中的内容放入其中。现在,当您访问 Model1 的显示页面时,它将调用显示部分并相应地呈现所有信息。起泡,冲洗,对 Model2 重复。

因此,您的双重表单的返回页面也将使用相同的部分。您的表单的结果页面如下所示:

<%= render 'model1/display' %>

<%= render 'model2/display' %>

这会提取每种模型类型的部分并将其放入结果页面。

有关使用部分的更多信息,请参阅: http: //guides.rubyonrails.org/layouts_and_rendering.html#using-partials

于 2013-07-11T06:06:57.597 回答