如何在params值中访问表单中的隐藏字段,但它表示行末尾

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了如何在params值中访问表单中的隐藏字段,但它表示行末尾相关的知识,希望对你有一定的参考价值。

我有一个想允许我的提案控制者使用的隐藏字段。

[当我提交表格时说

unexpected line end for proposal_params

我在这里想念东西吗?

_ form.html.haml:

%fieldset.col-md-12 = form.label t('.select_tags'),  class: 'tags-label' 
  = form.hidden_field :tags,  class: 'hidden_tags' 

控制器:

def proposal_params 
  params.require(:proposal).permit(:title, :description, :target_audience,
                                   :details, :pitch, :difficulty, :track_id, 
                                   :main_tag_id, comments_attributes: %i[body proposal_id person_id], 
                                   speakers_attributes: %i[person_id id], :tags) 
end

尽管我可以通过执行params[:proposal][:tags]来访问该值。

答案

在Ruby中,调用带有位置和关键字参数的方法时,必须将关键字参数放在最后:

def foo(*args, **kwargs); end
foo(1, 2, 3, bar: 'baz')
foo(bar: 'baz', 1, 2, 3) # syntax error
params.require(:proposal).permit(:title, :description, :target_audience,
                                   :details, :pitch, :difficulty, :track_id, 
                                   :main_tag_id, :tags,
                                   comments_attributes: %i[body proposal_id person_id], 
                                   speakers_attributes: %i[person_id id])

以上是关于如何在params值中访问表单中的隐藏字段,但它表示行末尾的主要内容,如果未能解决你的问题,请参考以下文章

如何停止 bootstrapValidator 来验证隐藏的输入字段?

如何根据 Django 下拉菜单中的选择显示和隐藏表单字段

当条目字段不可见时,如何隐藏 Xamarin 表单中的错误标签?

为啥图像名称未显示在表单字段中以进行更新?

通过 CSS 隐藏表单中的字段

取消选择数据表行后如何正确删除数组中的索引或值?