在Rails中的模型中创建模型

时间:2011-02-23 18:48:27

标签: ruby-on-rails

是否可以从另一个模型表单中创建模型对象?

假设我有一个Article模型和一个Term模型,它通过连接表与has_and_belongs_to_many关系。 (术语几乎与标签类似,但有一个定义列。)

我希望用户能够在编辑时为文章添加术语(可能使用复选框),但如果用户无法在列表中找到它,我也可以创建新术语。如何才能做到这一点?我希望用户能够在文章编辑表单中创建带有定义的术语。这可能吗?

3 个答案:

答案 0 :(得分:1)

读入“嵌套对象”或“嵌套属性”。这可能是一个很好的起点:http://ryandaigle.com/articles/2009/2/1/what-s-new-in-edge-rails-nested-attributes

答案 1 :(得分:0)

您可以随时分隔params散列内的字段(具有不同键的散列,可能是:term => {}和:article => {}),它们会被传递回控制器,然后在您完成后单独处理在控制器中。

答案 2 :(得分:0)

关于railscasts的Ryan展示了如何在这两个截屏视频中做类似的事情。他在调查网站上添加了问题和答案。

Nested Model Form 1

Nested Model Form 2

随着这个资源 nested attributes将帮助您将它们拼凑在一起。