问题标签 [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.
ruby-on-rails - Rails 3:“accepts_nested_attributes_for”如何工作?
考虑以下关联:
如果
我这样做:
@product
正如预期的那样,创建了一个名为“My Shop”的新商店并将其分配给。
但是,我无法弄清楚shop_attributes
包含 some时会发生什么id
,例如:
我收到以下错误:
问题 1
这是什么意思?
问题2
如果是这种情况,即id
商店的商店是已知的,并且商店id
已经存在,我应该如何创建@product
该商店将被分配给它的商店?
ruby-on-rails - 来自基类的 Rails STI 条件子类化
我正在开发一个项目,我有一个实体,它可能有两种资产:基本上是图片和视频。
由于我希望所有资产都在同一张表上,并且为Pictures或Videos提供一个上传表单,因此我使用的是 Single Table Inheritance,其中Picture和Video都从Asset类下降。此外,我将运行不同的验证/回调,具体取决于它是视频还是图片。
我正在使用回形针来处理上传过程,我的想法是在上传文件并使用它创建资产时,应用程序将根据上传文件的 mime 类型实例化正确的子类( Picture或Video ) .
这是我的课程的草图:
我的想法是在Asset类上实现before_save
回调并尝试在那里实例化正确的类,但我不知道该怎么做或者这是否是个好主意。
对此有任何想法吗?
ruby-on-rails - 如何使嵌套属性在 Rails3 中工作?
这是我的用户模型:
这是我的老师模型:
这是我的表格:
除了这个东西不会“接受嵌套属性”我的开发日志说:
我不知道它是否相关,但表单没有在teacher_attributes 数组或任何东西中生成字段 - 它在教师内部。我猜这就是我的问题所在,但我不知道如何让它把字段放在里面。请帮忙。
谢谢!
ruby-on-rails - Rails,与父对象一起创建关联记录?
也许我不知道如何询问/搜索这个特定的东西,但基本上我想在创建父对象时创建一些关联模型......假设我有以下情况:
我有一个Recipe
哪些has_many
Ingredient
模型......有没有办法一次制作它们,比如说这是我的种子任务的一部分,例如:
或者就像我完全疯了?必须有某种类似的方法来执行此操作,而不创建父模型,然后创建所有子模型……等等。
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)
是出乎意料的。谢谢阅读。
ruby-on-rails - Rails 嵌套属性未正确插入 ID
我正在尝试编辑模型的嵌套属性,就像此处的大纲一样,在此处复制:
在我的代码中,我有以下内容:
这很好用,除了当我查看 HTML 时,它正在创建如下所示的输入,未能输入正确的 id 而是放置模型的内存表示(?)。结果,更新失败:
编辑: 我试图在这种方法中这样做的原因是我需要收集一些关于现有meal_line_items 关联的信息。例如,在我取出代码的区域,我有一些代码的效果是:
如果我使用带有部分的表单生成器,至少在我的试验中不会,获取此信息将不起作用。
编辑 2:* 请参阅代码中的编辑。这是我的 MealLineItem
并为模型吃接受嵌套的属性。如您所见,它属于食物和膳食模型。对于现有的 meal_line_item 我需要执行以下操作:
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
模型。
javascript - Rails JavaScript 验证动态嵌套模型字段
我有一个嵌套模型表单,用户可以在其中创建一个“项目”,其中可以包含任意数量的“任务”,这些“任务”由任务“名称”和“描述”组成。这些任务由用户使用 jQuery 动态添加。
我想为每个任务中的字段提供客户端验证,目前我正在使用livevalidation插件。
问题是输入字段被赋予一个基于当前时间的动态 id,因为在提交表单时 Rails 必须是唯一的才能完成它的工作。
在我看来,我有两个选择:
不知何故,让 javascript 验证接受通配符,以便每次添加任务时,都可以根据其 id 中不变的部分对其字段设置验证。
在创建任务的同时创建必要的验证 javascript 内联。
上面的方法有用吗?有没有更好的选择?如何从部分 id 匹配中选择一个元素到验证器中?
谢谢
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 值,但更愿意遵守约定。
ruby-on-rails - 创建记录时出错:nil 对象而不是数组?
我有一个Topic
,它有很多Posts
,并接受它们的嵌套属性。当我创建一个主题时,它也会创建第一个帖子。
当Topics#create
被调用时,我NoMethodError
在尝试评估时得到一个nil.[]=
,我只是无法弄清楚是什么原因造成的。
创建方法:
我的新主题形式:
知道什么是错的吗?