问题标签 [nested-form-for]
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-3 - 不能使用 nested_form_for gem
我第一次使用nested_form_for gem。我不知道这是否是一个问题,或者我是否使用错误,但我收到“未定义的方法 nested_form_for”错误。如您所见,我有一个非常常规的表格:
顺便说一句,我安装了 gem 并运行:rails generate nested_form:install command
以生成我在 jquery 包含()之后包含在我的布局中的 nested_form.js 文件<%= javascript_include_tag :default, 'nested_form' %>
。
有人也在用这个宝石吗?
谢谢!
ruby-on-rails - 如何使用 form_for 更新关联的 has_many :通过关联
在我的 member_profile 表单中,我希望拥有对管理员可见的角色复选框。我想使用一些嵌套的form_for,但不能让它工作,所以我求助于手动创建check_box_tags(见下文),然后手动将它们添加到member_profile.member。
请注意,成员模型是设计,我不想将这些字段与我的成员配置文件数据混合,以防我将来更改身份验证系统。
形式 (haml)
member_profiles_controller.rb
ruby-on-rails - form_for 模型更新
我有按以下方式组织的嵌套资源:
在视图部分,我想要一个独特的 form_for,它能够一次处理(更新/创建)配置文件模型和位置。可能吗 ?代码是什么?如何组织一次接收多个模型的控制器?
肿瘤坏死因子
ruby-on-rails - Rails 3 form_for 嵌套路由
我正在尝试按照 Ruby 指南中的博客和评论示例(http://guides.rubyonrails.org/getting_started.html#adding-a-route-for-comments)使用嵌套路由执行 form_for。
我正在做一个应用程序来创建带有很多问题的调查,这些问题都在一个组中,每个问题都有一个或多个答案选项。
这是reoutes.rb
控制器运行良好,当我显示创建的组时,可以看到这些问题并使用嵌套的 form_for 波纹管创建问题:
组/show.html.erb
现在我需要展示答案以及将答案插入该问题的某种方法。使用@group.questions.each 块内的 q.answers.each 显示答案效果很好。但我要做的是制作一个 form_for 来回答,我尝试了下面的代码但没有工作:
组/show.html.erb
Rails 给出了一个错误:
未定义的方法“question_answers_path”
当我尝试使用 form_for([q, q.answers.build]) 时。
有什么帮助吗?
ruby-on-rails - 以双嵌套形式提交多条记录时出现未知属性错误
我将nested_form 用于以下情况:
Parent (climb) ==has_one==> Join Model (route_ascent) ==多态 has_many==> Children (route_step)
所以我有一个看起来像的攀爬物体
这里是 RouteAscent
这是RouteStep
在我的 Climb 表格中,我有
我的 _route_ascent_fields 部分只是
而我的 _ascent_step_fields 部分是
我遇到的问题是,每当我在连接模型的 has_many 关联中提交包含多个对象的表单时,都会收到未知属性错误。在这种情况下,表单生成的参数如下所示:
看起来第二个对象没有正确包含在参数中,但我无法弄清楚为什么会这样。
无论 has_many 关联是否以对象开头,都会出现问题。所以如果它是空的,我可以成功创建一个对象,但不能创建两个。如果它已经有一个对象,我不能再添加一个对象而不会出现此错误。
将继续努力解决这个问题,但我会很感激任何关于问题可能是什么的见解!
ruby-on-rails - Rails 3:nested_form、collection_select、accepted_nested_attributes_for 和 fields_for
这里和互联网上有很多关于让nested_form、collection_select、accepted_nested_attributes_for 和fields_for 很好地一起玩的好问题和答案,但我仍然很难过。如果您能帮助我,请提前致谢。
目的:生成新的 isbn 记录。一个 isbn 可以有很多贡献者。我成功地使用ryanb nested_form gem根据需要在表单上动态生成新的贡献者字段。其中一个字段使用 Contributor 中所有名称记录的 collection_select 下拉列表。创建新记录时,需要将许多贡献者 id 写入连接表(contributors_isbns)。
我已经完成了一些工作,但仅限于可以将单个贡献者 ID 保存到 isbns 表中的新记录的程度。我似乎无法将任何数据写入连接表。
我有三个模型。贡献者和 Isbns 有多对多的关系,我使用 has_many :through 完成了这一点。一个 isbn 可以有多个贡献者,一个贡献者可以有多个 isbn。他们通过contributors_isbn 加入。
isbn.rb
贡献者.rb
贡献者_isbn.rb
在 isbns 控制器中:
(显然我无法决定使用哪种构建方法。)
在 isbns new.html.erb 视图中:
在 _fields 部分中,具有非常简单的 text_field 的版本:
在这里,一个更高级的版本也不起作用:
此代码使用此处的答案。两者都会导致nested_form_for @isbn
在线上出现“缺失块”错误。
再次非常感谢。
更新:这里有一些关于 nested_form gem 的信息,对于查看这类问题可能会派上用场。这是关于accept_nested_attributes_for 的[2009 年但仍然相关的帖子][4]。
更新 2:嗯,这是一件事。我一直在用两个不同的模型研究这个的缩减版本,不使用 collection_select 或 has_many,而只是使用简单的 belongs_to / has_many 关联。父模型是 Contract,子模型是 Istc。我什至无法通过嵌套表单创建记录。但是,在查看堆栈并在谷歌上搜索错误消息“警告。无法批量分配受保护的属性”之后,我刚刚添加:istcs_attributes
到我的:attr_accessible
行中,现在我可以添加记录。缺少一个相当重要的部分,以及 RTFM 的一个案例,因为它就在 gem 自述文件中。我稍后会更新,看看这是否适用于更复杂的 has_many 通过关联。
更新 4:[这里][5] 是另一个关于如何处理零记录错误消息的有用帖子。
更新 5:稍微绕道 - 当我向表单动态添加一组新字段时,正在创建一个子记录。Duh - 我在子表单区域中有“添加”链接。这是之前的:
这是之后:
更新 6,回答后:
哦不。collection_select 不起作用。它正在添加新的贡献者记录,而不是使用贡献者模型中的现有记录。其他人也有这个问题。有任何想法吗?
ruby-on-rails - 当四个中的三个嵌套时,是否可以从同一个表单中编辑不同的模型?如何?
如何在一个表单中处理多个模型?我知道存在嵌套模型,但我不确定这是否是相同的情况。抱歉,对 Rails 有点陌生。
在我的情况下,项目配置文件包含标题、日期、描述以及版主等字段。然而,版主驻留在他们自己的模型上,这也得到了更新。然后是文件(名称、文件类型等)和联系人(名字、姓氏等)模型,它们也属于项目配置文件。
以下是模型之间的伪关系,以防万一: project_profile has_many moderators project_profile has_many files project_profile has_one contact
我希望能够从一个表单中编辑所有四个。这怎么可能?谢谢!
导轨 3.0.7 红宝石 1.9.2
ruby-on-rails - 为什么我的带有嵌套模型的 rails form_for 不会记住表单值?
我有一个名为的助手user_order
,它返回一个Order
. Order
接受User
和的嵌套属性Address
。我的(缩写)表格如下所示:
Order.rb 型号代码:
控制器代码:
当表单提交错误并重新呈现表单时,不会记住 user.email 的值。
为什么会这样?
ruby-on-rails-3 - 未提交简单嵌套形式的隐藏字段
环境:Rails 3.1.0,Ruby 1.9.2
我有投资组合模型,其中 has_many Positions which has_one Asset。
这是 Position 模型的架构:
当用户创建投资组合时,他/她应该输入投资组合名称,然后通过添加股票代码来添加头寸。Jquery 完成它的工作并显示资产的全名,并将asset_id 插入隐藏字段。
我同时使用 nested_form 和 simple_form 如下:
问题是隐藏字段中的asset_id值没有被提交。参数如下所示:
ruby-on-rails - nested_form 显示部分两次
我在 Rails 3.1 应用程序中使用 gem nested_form。问题是当我单击“link_to_add”生成的链接时,它会显示部分两次,而它应该只显示一次。你去一些代码:
形式:
模板:
其他人有同样的问题吗?
编辑:
愚蠢的错误,愚蠢的我。对不起,如果我让你们中的一些人浪费时间,问题是我加载了两次“nested_form.js”,所以它调用了附加部分相同次数的函数。
再次抱歉。