【问题标题】:How to create several objects of the same class in the same view using Rails 3?如何使用 Rails 3 在同一视图中创建同一类的多个对象?
【发布时间】:2011-07-22 21:52:12
【问题描述】:

假设我有一个类名 Object,它具有“名称”和“使用”属性。第二个名为“Person”的类有一个名为“how_many_objects_this_person_has”的属性。我正在尝试创建一个视图来寻找一个人(我提供了 id),看看这个人有多少个对象,比如说 N,并创建一个包含 N 行的表单,每个对象一个,两个字段对象的属性。当用户点击提交按钮时,必须保存所有对象,每个对象都有一个唯一的对象 ID。

有什么建议吗?我知道这看起来很简单,但我是初学者。我找了整整一个星期的答案,但自己无法解决。

非常感谢, 古斯塔沃

【问题讨论】:

标签: ruby-on-rails ruby-on-rails-3 activerecord views


【解决方案1】:

http://railscasts.com/episodes/196-nested-model-form-part-1 http://railscasts.com/episodes/197-nested-model-form-part-2

我认为您会发现,为了获得良好的用户体验,您很可能希望允许用户在记录过程中添加和删除记录,而不是预先确定要添加的记录数量。上面的 railscasts 展示了如何做到这一点

【讨论】:

  • 几周前我设置了类似的东西,上面的 RailsCast 非常有帮助(两个部分)。确保在 Persons 模型的 attr_accessible 中列出 ":objects_attributes"。那个小小的疏忽让我绊倒了一段时间(尽管 RailsCasts 会告诉你很多......我只是错过了它)。
【解决方案2】:

哦,是的!我在我的应用程序的另一部分使用了相同的方法。没有意识到我可以做同样的事情,但没有显示任何关于 Person 类的内容。

顺便说一下,该教程中有两点需要注意。您必须在 attr_accessible 中列出 :objects_attributes(如上所述)。另一个是 javascript 代码中有一个双 html 转义,这使得实际的 html 被渲染。只需在“h(text text text text)”中查找一些文本并删除“h()”即可。

非常感谢!

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2018-08-29
    • 1970-01-01
    • 2019-11-15
    • 1970-01-01
    • 2015-11-12
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多