Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/svg/2.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 RubyonRails-无法将属性分配给具有关联的新对象_Ruby On Rails 3 - Fatal编程技术网

Ruby on rails 3 RubyonRails-无法将属性分配给具有关联的新对象

Ruby on rails 3 RubyonRails-无法将属性分配给具有关联的新对象,ruby-on-rails-3,Ruby On Rails 3,我是rails的新手,在创建具有关联的新对象时遇到问题。我有3个对象:用户、工作、出价。投标属于用户,也属于作业。一个作业和一个用户都有许多出价。我的问题是,当我尝试使用params中的bid散列创建新的bid时,bids属性都不会更新 class Bid < ActiveRecord::Base belongs_to :job belongs_to :user attr_accessor :pay_type, :rate, :comment attr_protected :user_

我是rails的新手,在创建具有关联的新对象时遇到问题。我有3个对象:用户、工作、出价。投标属于用户,也属于作业。一个作业和一个用户都有许多出价。我的问题是,当我尝试使用params中的bid散列创建新的bid时,bids属性都不会更新

class Bid < ActiveRecord::Base

belongs_to :job
belongs_to :user

attr_accessor :pay_type, :rate, :comment
attr_protected :user_id, :job_id

end
@出价=

<Bid id: nil, pay_type: nil, rate: nil, comment: nil, user_id: nil, job_id: nil>
但唯一分配的bid属性是job_id:

<Bid id: nil, pay_type: nil, rate: nil, comment: nil, user_id: nil, job_id: 4>

任何方向都将不胜感激。如果我需要提供更多信息,请告诉我。

在这种情况下,我认为您希望使用attr\u accessible而不是attr\u accessor,因为您试图通过批量分配设置这些参数

查看文档以了解有关如何工作的详细信息。此外,请记住,您希望确保您的应用程序不受批量分配漏洞的影响-只需仔细遵循文档,您就可以了

@job.bids.build(params[:bid])
<Bid id: nil, pay_type: nil, rate: nil, comment: nil, user_id: nil, job_id: 4>