ruby on rails -在我的表单中遇到了与相关模型的冲突



我有一个表单,用户在其中添加了一个新项目,作为这个项目的一部分,他们选择了一个类别。该项目可以是存款或账单,所以我想要两个不同的列表,他们可以选择的类别,因为他们是分开相同的方式。这是我的分类帐项目和itemcategory模型

class Ledgeritem < ActiveRecord::Base
  attr_accessible :amount, :bankaccount_id, :deposit, :itemcategory_id, :name, :processed, :transactiondate
  attr_accessor           :balance
  attr_accessible         :balance
  belongs_to  :bankaccount 
  belongs_to  :itemcategory
end
class Itemcategory < ActiveRecord::Base
  attr_accessible :deposit, :itemcategory_id, :name, :user_id
  has_many  :ledgeritems
end

我的控制器中有这个。我最初在我的模型中有它,但将它移到控制器中,看看这是否是问题所在。

@bill_categories = Itemcategory.all.where("deposit = 0")
@deposit_categories = Itemcategory.all.where("deposit = 1")

这是我在

表单中使用它的方式
<%= f.label :itemcategory_id %><br />
<%= f.select :itemcategory_id, @bill_categories %>

这里是我得到的错误

can't convert Symbol into Integer

我很确定这和我的f.select的格式有关,我只是不知道是什么

您需要为f.select提供选项。您可以使用options_from_collection_for_select:

<%= f.select :itemcategory_id, options_from_collection_for_select(@bill_categories, 'id', 'name') %>

这将提供将value设置为@bill_categories中对象的id的选项,并且显示的文本将是@bill_categories中对象的name属性。

相关内容

  • 没有找到相关文章

最新更新