2017-07-19 36 views
0

我在轨道控制台中闲逛,我已经陷入了困境,试图做一些非常简单的事情。如何在父控制台中创建嵌套记录的传递?

Quote_requests has_one Quote属于它。

在Quote的init方法中,我声明它需要三个参数,其中没有一个是父级Quote_request。模型在轨道中创建,每边都有正确定义的关系语句。

我试图在rails控制台中用对象在quote_request上创建一个新的报价,并且Quote.new(arg1, arg2, arg3)返回一个非初始化的报价对象;

=> #<Quote:0x007fb64471b978 not initialized> 

因为我想这是打破在轨道上的定义关系的应用程序,因为它应该belong_to一个Quote_request实例,我还没有传入/它连接到quote_request实例。我有一个quote_request实例,都创建并准备好了,但我无法调用;

my_quote_request.quote.new(ARG1,ARG2,ARG3)

你能不能帮我整理自己离开这个简单而基本的关系,对象和消息传递运动。

谢谢

回答

1

如果定义Quote_request HAS_ONE报价请确保有一个“id”的一个报价,所以你可以从你的模式文件中的模型报价已经quote_request_id

和方式查询父(Quote_request)创建子(行情),你可以从这个网站http://api.rubyonrails.org/classes/ActiveRecord/Associations/ClassMethods.html

检查作为样本

@quote_request = QuoteRequest.new 
@quote = @quote_request.create_quote(arg1, arg2, arg 3) 
+1

谢谢@widjajayd,Y我们的答案和那个链接非常有帮助。 – jbk

相关问题