我有@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"
我想要做的是获取存储的值,所以" De Heer"或" 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
答案 0 :(得分:0)
解决了它。这是一个非常明显的解决方案。因为它将整个“:value =>”De Heer“”部分保存为字符串,我删除了:value => {}并且只填写了
= f.radio_button :gender, "De heer"
现在工作正常。
仅供参考,当我第一次制作表格时,我确实试过这个,但由于某种原因这给了我一个错误,这就是为什么我添加了:value =>首先。我不知道为什么它现在有用......