问题标签 [nested-attributes]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
26174 浏览

ruby-on-rails - Rails 3:“accepts_nested_attributes_for”如何工作?

考虑以下关联:

如果

我这样做:

@product正如预期的那样,创建了一个名为“My Shop”的新商店并将其分配给。

但是,我无法弄清楚shop_attributes包含 some时会发生什么id,例如:

我收到以下错误:

问题 1

这是什么意思?

问题2

如果是这种情况,即id商店的商店是已知的,并且商店id已经存在,我应该如何创建@product该商店将被分配给它的商店?

0 投票
1 回答
734 浏览

ruby-on-rails - 来自基类的 Rails STI 条件子类化

我正在开发一个项目,我有一个实体,它可能有两种资产:基本上是图片视频

由于我希望所有资产都在同一张表上,并且为PicturesVideos提供一个上传表单,因此我使用的是 Single Table Inheritance,其中PictureVideo都从Asset类下降。此外,我将运行不同的验证/回调,具体取决于它是视频还是图片。

我正在使用回形针来处理上传过程,我的想法是在上传文件并使用它创建资产时,应用程序将根据上传文件的 mime 类型实例化正确的子类( PictureVideo ) .

这是我的课程的草图:

我的想法是在Asset类上实现before_save回调并尝试在那里实例化正确的类,但我不知道该怎么做或者这是否是个好主意。

对此有任何想法吗?

0 投票
1 回答
422 浏览

ruby-on-rails - 如何使嵌套属性在 Rails3 中工作?

这是我的用户模型:

这是我的老师模型:

这是我的表格:

除了这个东西不会“接受嵌套属性”我的开发日志说:

我不知道它是否相关,但表单没有在teacher_attributes 数组或任何东西中生成字段 - 它在教师内部。我猜这就是我的问题所在,但我不知道如何让它把字段放在里面。请帮忙。

谢谢!

0 投票
2 回答
3863 浏览

ruby-on-rails - Rails,与父对象一起创建关联记录?

也许我不知道如何询问/搜索这个特定的东西,但基本上我想在创建父对象时创建一些关联模型......假设我有以下情况:

我有一个Recipe哪些has_many Ingredient模型......有没有办法一次制作它们,比如说这是我的种子任务的一部分,例如:

或者就像我完全疯了?必须有某种类似的方法来执行此操作,而不创建父模型,然后创建所有子模型……等等。

0 投票
1 回答
676 浏览

ruby-on-rails-3 - Accepts_nested_attributes_for 导致 SQLException

我想用Sectionsaccepts_nested_attributes_for创建一个 Article 对象。has_many

只要:reject_if条件接受嵌套属性(如果title属性不是blank?),我就会看到 SQLException。否则,文章将在没有相关章节的情况下成功创建。

我试图弄清楚Section Load舞台上出了什么问题,因为这WHERE (article)是出乎意料的。谢谢阅读。

0 投票
3 回答
1159 浏览

ruby-on-rails - Rails 嵌套属性未正确插入 ID

我正在尝试编辑模型的嵌套属性,就像此处的大纲一样,在此处复制:

在我的代码中,我有以下内容:

这很好用,除了当我查看 HTML 时,它正在创建如下所示的输入,未能输入正确的 id 而是放置模型的内存表示(?)。结果,更新失败:

编辑: 我试图在这种方法中这样做的原因是我需要收集一些关于现有meal_line_items 关联的信息。例如,在我取出代码的区域,我有一些代码的效果是:

如果我使用带有部分的表单生成器,至少在我的试验中不会,获取此信息将不起作用。

编辑 2:* 请参阅代码中的编辑。这是我的 MealLineItem

并为模型吃接受嵌套的属性。如您所见,它属于食物和膳食模型。对于现有的 meal_line_item 我需要执行以下操作:

0 投票
1 回答
710 浏览

ruby-on-rails - Accepts_nested_attributes_for 是否遵守 has_many 声明中的条件?

按照我目前设置代码的方式,用户 has_many current_treatments (与其他治疗不同,它们与用户之间的关联将布尔“当前”设置为 true)。我遇到的问题是,当我尝试通过 accept_nested_attributes_for 以嵌套形式指定用户的当前治疗时,“治疗”没有与“当前”布尔集一起保存。

我假设accepts_nested_attributes_for 为你工作。不是吗?如果是这样,我做错了什么?如果没有,实现这一目标的最佳实践方式是什么?

这是我的例子:

我试图让用户通过以下方式设置他当前的治疗方法:

但是在提交表格后,我得到如下信息:

请注意,保存新处理时没有将“当前”布尔值设置为 true,如 has_many 声明中指定的那样。

编辑:这是Treatment模型。

0 投票
1 回答
2087 浏览

javascript - Rails JavaScript 验证动态嵌套模型字段

我有一个嵌套模型表单,用户可以在其中创建一个“项目”,其中可以包含任意数量的“任务”,这些“任务”由任务“名称”和“描述”组成。这些任务由用户使用 jQuery 动态添加。

我想为每个任务中的字段提供客户端验证,目前我正在使用livevalidation插件。

问题是输入字段被赋予一个基于当前时间的动态 id,因为在提交表单时 Rails 必须是唯一的才能完成它的工作。

在我看来,我有两个选择:

  1. 不知何故,让 javascript 验证接受通配符,以便每次添加任务时,都可以根据其 id 中不变的部分对其字段设置验证。

  2. 在创建任务的同时创建必要的验证 javascript 内联。

上面的方法有用吗?有没有更好的选择?如何从部分 id 匹配中选择一个元素到验证器中?

谢谢

0 投票
1 回答
872 浏览

ruby-on-rails - 遍历多个子记录时如何访问 ActionView 的 fields_for 索引?

我有一个 Rails 2.3.10 应用程序,它使用 fields_for 在 has_many 关联的属性中包含字段。我在父模型上使用了accepts_nested_attributes_for,它的许多子模型使用以下形式显示:

fields_for 帮助器迭代子标记模型,并为每个生成 text_field 输入。这些文本字段已生成 id 值,例如:

  • map_markers_attributes_0_lat 和 map_markers_attributes_0_long

  • map_markers_attributes_1_lat 和 map_markers_attributes_1_long

  • ...

  • map_markers_attributes_5_lat 和 map_markers_attributes_5_long

id 中的整数是被迭代的记录数组的索引。如何访问此索引值以在我的代码中的其他地方使用?

例如,我想使用 Javascript 访问这些输入的 id 值。

我在 html 的头部插入了一些 javascript 来观察该字段是否有任何变化。我需要知道字段的 id 并且我的 generate_html_id 方法应该能够从 marker_f 构建器对象复制字段的 id。但是我不知道如何从 fields_for 获取索引值。

似乎应该有一个 fields_for_with_index 方法,但没有:

顺便说一句,我可以为该字段创建自定义 id 值,但更愿意遵守约定。

0 投票
2 回答
159 浏览

ruby-on-rails - 创建记录时出错:nil 对象而不是数组?

我有一个Topic,它有很多Posts,并接受它们的嵌套属性。当我创建一个主题时,它也会创建第一个帖子。

Topics#create被调用时,我NoMethodError在尝试评估时得到一个nil.[]=,我只是无法弄清楚是什么原因造成的。

创建方法:

我的新主题形式:

知道什么是错的吗?