我有这个参数:
Parameters: {
"diagram"=>{"name"=>"name123"},
"isit"=>{
"0"=>{"xposition"=>"171", "yposition"=>"451", "titleid"=>"isit0", "description"=>"-description-", "leftrelationsids"=>"", "rightrelationsids"=>""},
"1"=>{"xposition"=>"254", "yposition"=>"554", "titleid"=>"isit1", "description"=>"-description-", "leftrelationsids"=>"", "rightrelationsids"=>""}}}
在接收上述参数的create方法中,我想存储一个图表(现在它只是它的名称),之后我想存储每个组件。
我在diagrams_controller.rb
创建方法中执行此操作。该图有has_many组件。
我的问题是如何存储组件数据?
我试过这个(现在只是尝试过列,xposition和yposition):
def create
@diagram = Diagram.new(diagram_params)
@diagram.save
@diagram.components.create(params.require(:isit).permit(:xposition, :yposition))
存储图表,但不存储组件。我不知道如何处理这个需要permite的东西到组件。
结果如下:
有任何帮助吗?我该如何存储组件?
答案 0 :(得分:1)
尝试使用此代码:
@diagram = Diagram.new(diagram_params)
@diagram.save
component = Component.create(params.require(:isit).permit(:xposition, :yposition))
@diagram.components << component
@diagram.save
或者在图表模型中使用accepts_nested_attributes_for
,然后修改diagram_params
方法以添加以下内容:
params.require(:diagram).permit(components_attributes: [:xposition, :yposition])