Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/ruby-on-rails-3/4.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 当两个字段都对应于可能的未初始化对象时,如何根据两个字段查找_或_initialize_Ruby On Rails 3 - Fatal编程技术网

Ruby on rails 3 当两个字段都对应于可能的未初始化对象时,如何根据两个字段查找_或_initialize

Ruby on rails 3 当两个字段都对应于可能的未初始化对象时,如何根据两个字段查找_或_initialize,ruby-on-rails-3,Ruby On Rails 3,嗨,伙计们,我有一个情况,在一张表格上,我正在接受一个汽车维修申请的订单。我有以下型号: Car belongs_to :car_company Car_company has_many :cars Services attributes_accessible :car_company_id, :car_id #virtual attributes attributes_accessible :car_company_name, :car_reg 问题是,用户可以在一个表单上输入汽车公司的

嗨,伙计们,我有一个情况,在一张表格上,我正在接受一个汽车维修申请的订单。我有以下型号:

Car
belongs_to :car_company

Car_company
has_many :cars

Services
attributes_accessible :car_company_id, :car_id
#virtual attributes
attributes_accessible :car_company_name, :car_reg
问题是,用户可以在一个表单上输入汽车公司的名称以及汽车的注册号。如果公司名称不存在,它将创建一个新公司并将其与服务关联,汽车也是如此。我让这部分工作,但问题是,我希望在提交此表单时,创建的汽车应自动与汽车公司关联,无论汽车公司是否存在


我被困在这里,不知道如何正确地完成这件事?它基本上只是为了避免在表单上使用汽车详细信息和公司详细信息而单独输入。伙计们,有什么好主意吗?

我知道你们用的是一个非传统的型号名称。按照rails的惯例,您的模型应该是
CarCompany
。然而,我认为你所拥有的将会起作用

将这样的东西放入适当的控制器可能是您想要的东西。如果没有,请说明你想要什么

car_company = Car_company.find_or_initialize_by_name(params[:car_company_name])
car = Car.find_or_initialize_by_registration(params[:car_registration])
car_company.cars << car
car_company.save
car\u company=car\u company.find\u或\u initialize\u by\u name(参数[:car\u company\u name])
car=car.find_或通过_注册初始化_(params[:car_注册])

car_company.cars你能把你的密码贴出来吗?