View 文本\字段\带有预填充文本和自定义参数的标记
我试图在我的一个观点中实现这一点:View 文本\字段\带有预填充文本和自定义参数的标记,view,ruby-on-rails-3.1,View,Ruby On Rails 3.1,我试图在我的一个观点中实现这一点: <%= text_field_tag :sources, "Test", params[:sources] %> 但我得到了nil:NilClass的未定义方法“stringify_keys”。代码 <%= text_field_tag :sources, "Test" %> 工作正常,并用“Test”预填充框(但不能正确通过参数),而代码 <%= text_field_tag :sources, params[:so
<%= text_field_tag :sources, "Test", params[:sources] %>
但我得到了nil:NilClass的未定义方法“stringify_keys”。代码
<%= text_field_tag :sources, "Test" %>
工作正常,并用“Test”预填充框(但不能正确通过参数),而代码
<%= text_field_tag :sources, params[:sources] %>
正确地通过参数,但在我需要的地方没有文本“Test”
有人知道语法或解决方法吗?您要查找的语法是: 文本区域标签(名称,内容=nil,选项={}) 代码的问题是,给定三个参数
text\u field\u tag
期望第三个参数是散列,但params[:sources]
给出的是nil
。您是否希望它具有不同的值?params
设置在哪里,它包含什么
如果您知道params[:sources]
有时会包含散列,而其他时间为nil
(即未设置),则可以使用例如:
<%= text_field_tag :sources, "Test", params[:sources] || {} %>
params[:sources]|{}
将在params[:sources]
错误时(例如nil
)计算为空哈希({}
),这将避免错误。谢谢,我没有按照您的建议传递params。我首先在控制器中设置它,然后将视图显示为,效果非常好