我是Rails的新手,遇到了一些困难...

我有一个页面,该页面显示表中的记录列表,并希望用户能够进行更改,提交表单,运行验证并保留数据。

这是我到目前为止的内容:

视图:

- @people.each do |p|
  %tr
    %td
      %input{:type => "hidden", :name => "person_id[]", :value => p.id}
      %input{:name => "firstname[]", :value => p.firstname}
    %td
      %input{:name => "lastname[]", :value => p.lastname}

示例参数已发布到控制器:

"person_id"=>["12", "13", "14"], 
"firstname"=>["john", "joe", "mary"], 
"lastname"=>["smith", "bloggs", "jane"],

在这一点上,我很害怕,因为我不再局限于活跃的记录了。 相反,我感觉自己想编写一些凌乱的代码来遍历person_id数组,以查看发生了什么更改并将所有更改写回。

感觉很不好,因为我必须显式比较每个字段,如果由于验证错误而导致某些操作失败,我应该如何回滚任何更改并将消息显示给用户?

我希望由于我对Rails的无知,这整个方法都是错误的,并且我错过了一个窍门。 有人对如何解决此问题有任何建议吗?

===============>>#1 票数:0 已采纳

我想通过查看视图代码中隐藏的person_id字段,可以在people modelperson model之间people model 关联
如果您的关联设置正确,请使用

accepts_nested_attributes_for

并遵循Rails指南了解关联基础知识
目前,我只能为您提供帮助,因为您的问题中没有提供太多信息。

  ask by Chris translate from so

未解决问题?本站智能推荐:

2回复

两个模型类在Rails / ActiveRecord中具有相互之间的归属

我有一个用于Lesson模型的版本控制机制: Lesson和LessonVersion之间存在一对多的关系。 我已经通过在LessonVersion类中拥有belongs_to :lesson来LessonVersion 。 现在,我将不处理该关系的Lesson类中的has_many
2回复

如何在ROR3中指定要在update_attributes中使用的属性?

我想要实现的是只更新我的Order模型中的可访问属性,传递current_user对象,如下所示: 那么有可能在没有明确设置要更新的列的情况下实现这一点吗?
2回复

Rails中的Muti表继承

在我的Rails应用程序,我有一个CASE充当逻辑超类具体案件的域模型(即域实体CASEA , CASEB , CASEC )像这样: 这个想法是要有一个具有所有案例共有的属性的域模型,并为每个特定案例类型提供一个域模型,以封装该案例的特定属性。 我需要使用双向一对一关系来实现多表
2回复

现有的Rails模型,无需从数据库中获取

有谁知道是否有可能创建模型实例并应用ID和任何其他属性,而不必从数据库中加载它? 我尝试这样做,但是没有从数据库中获取关联:(有什么想法吗? 编辑 我想要完成的就是: 从数据库中获取现有记录。 将记录的“散列”输出存储到Redis或其他内存存储中。 下次
2回复

多个Rails ORM

我们有一个Rails 3应用程序,它有一个由activerecord映射的PostgreSQL数据库(有~10个表)。 一切都很好。 但是,我们也可以使用: 一个MongoDB数据库,以存储图像(可能与mongoid gem)。 一些Neo4j数据库(可能带有neo4j
1回复

是否可以在Active_Record中多次定义“ belongs_to”?

我正在尝试为镇上的一家公司编写数据库。 我正在使用Devise进行身份验证,并使用Forem进行网站的论坛。 我决定只为Devise身份验证提供一个类“ Account”,该类将具有对该站点的许多不同访问类型。 用户的大部分将只是按路线(而不是Rails路线,街道路线)分开的客户。
1回复

如何清除Model的:has_many关联而不在ActiveRecord中写入数据库?

为了这个问题,让我们说一个非常简单的模型: 问题是,当人们在表单上更新他们的兴趣爱好并且他们没有选择任何兴趣爱好时,如果没有实际删除所有关联,我就无法在代码中反映出来。 因此,说动作看起来像这样: 注意human.hobbies.clear行。 我想打电话给我以确保只保存
1回复

如果ActiveRecord中的模型总是一个复数的单词怎么办?

我正在开发应依赖现有数据库的Rails应用程序。 有几个表名,这些表名始终是多个单词,例如“ Series”。 应用程序无法与它们关联的模型正常工作。 您打算如何处理-是否有任何解决方案而不更改命名? 提前致谢!
3回复

使用一个查询在Rails中同时使用ActiveRecord更新多个记录?

假设我的Rails应用程序中有一个名为“user_products”的表和一个名为UserProduct的对应模型。 我的表中还有一个名为'is_temporary'的字段。 现在假设我想运行这样的查询,但使用ActiveRecord抽象层: 有没有办法使用ActiveRecord可
3回复

Rails根据字段值更新几条记录

我有一个带有price字段的Subscription模型,我的上一次迁移引入了一个名为per_month_price的字段。 我正在寻找一种比简单的.each {...}更快的记录更新方法。 例如: Subscription.update_all {|c| c.per_month_pri