Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/ruby-on-rails/67.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Ruby on rails 轨道3。HABTM表单选择下拉菜单_Ruby On Rails_Ruby_Forms_Associations_Has And Belongs To Many - Fatal编程技术网

Ruby on rails 轨道3。HABTM表单选择下拉菜单

Ruby on rails 轨道3。HABTM表单选择下拉菜单,ruby-on-rails,ruby,forms,associations,has-and-belongs-to-many,Ruby On Rails,Ruby,Forms,Associations,Has And Belongs To Many,我有一张发票。这是一个简化版本:因此它有行项目,您可以在其中选择产品名称的下拉菜单 这工作正常:所以发票与行项目的关系是这样的:发票有许多行项目,行项目属于发票。行项目属于项目,项目有多个行项目。我的项目、行项目和发票设置正确 但现在我想在行项目中添加税费 所以我创建了一个line_items_taxes表来创建line_items和taxes之间的HABTM关系。但我无法在表单中正确设置它。我的表格看起来像这样 |name|price|tax| | v| | v| | v|

我有一张发票。这是一个简化版本:因此它有行项目,您可以在其中选择产品名称的下拉菜单

这工作正常:所以发票与行项目的关系是这样的:发票有许多行项目,行项目属于发票。行项目属于项目,项目有多个行项目。我的项目、行项目和发票设置正确

但现在我想在行项目中添加税费

所以我创建了一个line_items_taxes表来创建line_items和taxes之间的HABTM关系。但我无法在表单中正确设置它。我的表格看起来像这样

|name|price|tax|
|   v|     |  v|
|   v|     |  v|
|   v|     |  v|
[save invoice]
所以我需要一个税收下拉选择菜单,当发票被保存时,它会保存每个行项目的税收

我已经尝试了在和提供的解决方案,但我得到了错误

未定义的方法合并:名称:符号
'line\u item[tax\u ids][]}%>

对collection\u select的调用包含一个额外的参数,该参数会导致一些问题。(因为我假设您使用的是*form_for*,所以会自动包含'line_item'参数,而您的参数是多余的。)

它应该是这样的:

f.collection_select 'tax_ids', @taxes, :id, :name, {:name => 'line_item[tax_ids][]'}
无论如何,这是一个正确方向的开始