Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/ruby-on-rails/64.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Ruby on rails Rails文本字段帮助器返回数组?_Ruby On Rails_Ruby_Ruby On Rails 3 - Fatal编程技术网

Ruby on rails Rails文本字段帮助器返回数组?

Ruby on rails Rails文本字段帮助器返回数组?,ruby-on-rails,ruby,ruby-on-rails-3,Ruby On Rails,Ruby,Ruby On Rails 3,我有一个rails表单帮助器,看起来像这样: <%= text_field :username,nil, {:placeholder=>"new username", :value=>nil} %> (删除HTML) 这使得访问username属性很麻烦。我有: @user.username = [:username] Params看起来像 {"utf8"=>"✓", "authenticity_token"=>"...", "username"=>

我有一个rails表单帮助器,看起来像这样:

<%= text_field :username,nil, {:placeholder=>"new username", :value=>nil} %>
(删除HTML)

这使得访问username属性很麻烦。我有:

@user.username = [:username]
Params看起来像

{"utf8"=>"✓", "authenticity_token"=>"...", "username"=>["newusername"], "commit"=>"Save", "id"=>"10"}
@user.username被设置为(转义)[“newusername”]——它被设置为“---newusername”

不知道如何去掉表单值周围的[]!我该怎么办

编辑:rails生成的整个表单:

您应该使用
text\u field\u标签

<%= text_field_tag :username, nil, :placeholder => "new username" %>
您仍然可以使用text_字段,但必须显式设置名称

text_field :username, nil, name: 'username'

我不知道的是,如果你将
nil
作为第二个参数传递,它会将该字段设置为一个集合标记,因此我今天学到了一些新的东西。

你能粘贴整个表单吗?在帖子底部添加了一个指向整个表单的粘贴箱的链接。谢谢!这起作用了。文本字段标记和文本字段之间有什么区别?
text_field :user, :username
text_field :username, nil, name: 'username'