Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/cmake/2.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 返回复选框值_Ruby On Rails_Checkbox_Radio Button_Haml - Fatal编程技术网

Ruby on rails 返回复选框值

Ruby on rails 返回复选框值,ruby-on-rails,checkbox,radio-button,haml,Ruby On Rails,Checkbox,Radio Button,Haml,我有一个@invoice_address的表单,表单中有两个单选按钮用于属性性别,如下所示: = form_for @invoice_address do |f| .table-responsive %table.table %tbody %tr %td = f.radio_button :gender, :value => "De Heer" = f.radio_button :g

我有一个@invoice_address的表单,表单中有两个单选按钮用于属性性别,如下所示:

= form_for @invoice_address do |f|
  .table-responsive
    %table.table
      %tbody
        %tr
          %td
            = f.radio_button :gender, :value => "De Heer"
            = f.radio_button :gender, :value => "Mevrouw"
我想做的是获取存储的值,所以可以是“deheer”或“Mevrouw”。这就是我试图做到的:

%td= @invoice_address.gender
问题是,这会返回:

{:value=>"De Heer"}
如何摆脱{:value=>“”}而只获取值

如果您需要它,这在我的模式中:

create_table "invoice_addresses", force: :cascade do |t|
  t.string "street"
  t.string "zip"
  t.string "city"
  t.string "country"
  t.string "phone"
  t.string "mobile"
  t.string "firstname"
  t.string "lastname"
  t.string "gender"
  t.datetime "created_at", null: false
  t.datetime "updated_at", null: false
end

解决了。这是一个非常明显的解决办法。因为它将整个“:value=>”De Heer“部分保存为字符串,所以我删除了:value=>{}并只填充了

= f.radio_button :gender, "De heer"
现在很好用


仅供参考,在我第一次创建表单时,我确实尝试过这个方法,但由于某种原因,这给了我一个错误,这就是为什么我首先添加了:value=>的原因。我不知道为什么它现在能工作…

在寻求帮助之前,你应该先复习一下ruby的基础知识,你可以从这里开始