问题标签 [fields-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 - fields_for 和 has_many_through
我有这些模型:
我想在订单表格中有一个嵌套表格,它显示每个奖品,旁边有一个文本框,用户可以在其中输入作品(例如,要订购的金额)。提交表单时,创建操作应相应地创建 order_lines。我在任何地方都找不到解决方案。
ruby - Rails FormBuilderInstance.object 属性
我正在开发一个租赁系统。我有一个名为的模型check_outs
,它是一个 order
orderhas_many :check_outs
和一个 check_out的出租模型belongs_to :rental
。我的订单accepts_nested_attributes_for :check_outs
和我有一个嵌套的fields_for :check_outs
. 我正在使用 rbates 的 nested_form gem。
我要做的是获取在结帐创建步骤中设置的出租属性(描述,check_outs 的 attr_accessor),以填充编辑视图中的标签或文本字段。
我知道我可以获取它自己使用的 check_out 对象builder.object
,我什至可以获取builder.object.rental
,但是当我尝试获取时,builder.object.rental.id
或者builder.object.rental.description
我得到一个未知属性的 nil 错误。这似乎没有意义,因为对象本身不是零。
有任何想法吗?
ruby-on-rails - has_many 关系的 Rails fields_for 参数不会在 params 中产生数组
我有一个模型传感器,它has_many
与accepts_nested_attributes_for
另一个模型手表有关系。在更新传感器的表格中,我有以下内容
这是为了允许编辑已经创建的属于 Sensor 的 Watches。
这个调用吐出表单输入,如下所示:
当这个被提交时,params
传感器控制器中的对象会得到一个类似的关联
对于一个has_many
, accepts_nested_attributes_for
update@sensor.update_attributes
调用,似乎该属性键确实必须映射到一个数组。
从我在示例中看到的内容来看has_many
,accepts_nested_attributes_for
、 和的组合sensor_form.fields_for
应该允许我将结果params
对象直接传递给@sensor.update_attributes
并按预期更新每个相关对象。相反,传感器发生,没有错误,但观察对象没有更新(因为"watches_attributes"
映射到哈希而不是数组?)我错过了什么吗?
ruby-on-rails - 使用通用 fields_for 的 Nil 对象
我正在尝试使用通用 fields_for 方法传递参数。我有一个表格:
我希望这个表单会生成照片[名称] 和照片[描述],这样当我提交表单时,我的控制器可以检查 params[:photo] 是否存在...#do something。我不使用嵌套表单的原因是因为有时甚至不会使用这些表单字段。
问题是我得到的是 fields_for :photo 行的错误。它说你有一个 nil 对象,但你没想到它!您可能期望一个数组的实例。
如果它不为零,我怎么能做这个通用的fields_for?
ruby-on-rails - has_one 与 :class_name 和 belongs_to 关系未在 rails 3.2.3 中正确设置属性
我正在尝试制作一个表单,通过 has_one (使用 :class_name 选项)和 belongs_to 关系为两个子对象设置值。但是,当我通过表单输入和提交值时,即使我输入不同的值,两个子对象也具有相同的值。
我有这两个模型。(上面的两个子对象表示类名为“Place”的“origin”和“destination”)
并使用以下部分制作表格。
路线/_form.html.erb
地方/nested_places_form.html.erb
就像我提到的那样,即使我将不同的值放在空白中并从表单提交,来源和目的地的属性也总是以相同的方式结束。
我怎样才能使这项工作?
ruby-on-rails - 如何将表单中的两个字段合并为模型中的一个字段
我有一列start
日期时间类型,并希望将其显示为文本字段(以添加日期选择器)和 time_select。我尝试了不同的方法,其中一种是使用fields_for/simple_fields_for。
如何将这两个字段转换为模型中所需的日期时间列?或者有没有更好的方法以匹配数据库中一个字段的形式显示两个字段?
ruby-on-rails - Rails 为具有多个 has_many 关系的模型渲染 fields_for
我有一个components
属于主容器模型的模型。该components
模型有许多servers
和services
。基本上一切都很好,除了它从每个中渲染出两个,因为在我的控制器中我fields_for
使用以下代码设置了:
所以很清楚为什么我会得到多种表格,有没有办法has_many
在一条线上建立关系?我试过了:
和
谢谢
更新->
将代码移动到一个块中似乎可行(我只是在猜测)
该代码在控制器中。
ruby-on-rails - Ruby on Rails fields_for 在编辑操作中生成太多字段
我有一个真正的野兽表单,它本质上是一个五页的销售表单,在创建新表单时一切都很好。但是当您去编辑新表单时,它会重复四次字段和值,有时甚至是 7 次。我不知道编辑操作是如何工作的,它使用与新操作相同的表单部分。但这是我对新操作和编辑操作的控制器操作。
此外,并非每个字段都发生重复,它似乎只发生在有has_many
关系的部分。
我只是不知道为什么它会在编辑操作中生成额外的字段,希望有更多 Rails 经验的人知道这种行为。
谢谢!
编辑:
这是表单的一部分,其中每个 ruby 块渲染 4 次。
最后更新:
好的,所以我需要制作一个单独的表格进行编辑,使用一个通用块循环通过数据库。这就是我所拥有的组件
ruby-on-rails - Rails - 使用 fields_for 使用与 new/edit 相同的表单
我有5个模型,
- 人
- 人车
- 汽车(有很多轮胎)
- person_car_tire
- 轮胎(属于汽车)
所以我有这个视图_form.html.erb
当我保存它时它工作得很好,当我想使用这个表单进行编辑时,问题就来了,因为它在视图中重复了每辆车的数据 4 次。我一直在搜索允许额外选项的字段,所以我做了:
现在它可以工作了,但只显示我在新动作中选择的汽车和轮胎。不是我想要的(因为如果我使用第一个表单,它会在视图中复制复选框)。
如何对这两个操作使用相同的表单?
希望可以有人帮帮我。
ruby-on-rails - 当我尝试访问属性时,rails fields_for 对象为零
拥有三种型号:
在编辑offer的表单中,有fields_for可以编辑offer_item
部分代码块:
抛出错误
nil:NilClass 的未定义方法“名称”
提取的源代码(第 29 行附近):
但是当我不问名字时,就像这样
进入浏览器:
我不只是想知道,为什么我无法访问“名称”属性并将 partner_product 更改为 nil,但我真的应该展示它。欢迎任何帮助!谢谢