2014-02-21 138 views
0

我正在使用Ruby on Rails中的第一个应用程序,而且我试图在我的模型的“显示”视图上添加一个链接,该模型克隆某些对象自己的属性以在不同的对象中创建新对象模型。Rails:如何在模型/控制器B中的视图中创建模型/控制器A中的项目?

例如,假设您想让用户从可用股票列表中创建自己的个人股票投资组合条目,并通过当前股票价格和股票代码。

模型A包含符号和价格的可用股票列表。

模型B包含属于每个用户的个人股票列表,也包含符号和价格(从模型A克隆)和个人描述。

我试图让人们点击的模型A显示视图按钮,创建模型B的新实例,复制从目前A符号和价格来创建一个新的B.

我尝试将个人股票的部分表单放入SHOW视图中以查看可用股票,但收到此错误“表单中的第一个参数不能包含零或为空。”

任何想法没有粘贴在我的代码蝙蝠?

回答

0

你可能在你的部分中有类似form_for(@personal_stock)的东西。将其更改为form_for(personal_stock),然后当你渲染部分的股票列表使用:

<%= render 'personal_stock/form', :personal_stock => PersonalStock.new(:stock => stock) %> 

你还需要修改您的新的渲染和编辑的意见为PersonalStocksController到:

<%= render 'form', :personal_stock => @personal_stock %> 
+0

经过一些调整后,效果很好'<%= render'personal_stock/form',:personal_stock => PersonalStock.new(:stock => stock)%>'to'<%= render'personal_stock/form',:personal_stock => PersonalStock.new(:symbol => @ stock.symbol)%>'非常感谢! – dstep

相关问题