[英]Rails: How to access child model params in controller?
I have two models submission
and upload
where: 我有两个模型
submission
并upload
到:
#Submission.rb
attr_accessible :id, :photo_id, :uploads_attributes
has_many :uploads, :dependent => :destroy
accepts_nested_attributes_for :uploads, :allow_destroy => true
#Upload.rb:
attr_accessible :id,:photo_type_id
belongs_to :submission
In my submissions_controller.rb
I can access photo_id
with: 在我的
submissions_controller.rb
我可以访问photo_id
:
params[:submission][:photo_id]
, params[:submission][:photo_id]
,
however I don't know how to access its child model's photo_type_id
但我不知道如何访问其子模型的
photo_type_id
I tried 我试过了
params[:uploads_attributes][0][:package_type_id]
but it doesnt work, ig gives me: 但它不起作用,ig给了我:
NoMethodError (undefined method `[]' for nil:NilClass):
In my view page source I have: 在我的视图页面源代码中我有:
name="submission[photo_id]"
**in fields_for:**
name="submission[uploads_attributes][0][photo_type_id]"
Any idea what should be changed? 知道应该改变什么吗?
Find the answer here: 在这里找到答案:
How to access nested params 如何访问嵌套参数
in my case, I used: 在我的情况下,我用过:
params[:submission][:uploads_attributes]["0"][:photo_type_id]
Just need to change the [0]
to ["0"]
只需要将
[0]
更改为["0"]
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.