Simple_form和Rails - 多项选择
我正在尝试使用simple_form进行表单,并且有多个选择部分。所有的数据都被保存(我有名字,姓氏,电子邮件...),但多选单选按钮始终是一个空字符串。 如何制作一个简单的选择列表并保存该选项?Simple_form和Rails - 多项选择
架构:
create_table "greetings" do |t|
t.string "first_name"
t.string "last_name"
t.string "nickname"
t.string "multiple_choice"
end
控制器:
def new
@greeting = Greeting.new
end
def create
@greeting = Greeting.new(greeting_params)
@greeting.save
end
private
def greeting_params
params.require(:greeting).permit(:first_name, :last_name, :nickname, :multiple_choice)
end
日志:
开始POST “/问候” 为:: 1在2017年7月28日17点32分: 19 +1000 GreetingsController处理#以HTML格式创建参数: {“utf8”=>“✓”,“authenticity_token”=>“...”, “greeting”=> {“first_name”=>“John”,“last_name”=>“Doe”, “nickname”=>“Johnny”,“multiple_choice”=>“”}, “multiple_choice”=> BEGINSQL (0.4ms)INSERT INTO“greetings”(“first_name”,“last_name”, “nickname”,“multiple_choice”,“created_at”, “updated_at”)VALUES($ 1, $ 2,$ 3,$ 4,$ 5,$ 6,$ 7)RETURNING“id”[[“first_name”,“John”], [“last_name”,“Doe”],[“ “,”Johnny“],[”multiple_choice“,”“], [”created_at“,2017-07-28 07:32:19 UTC],[”updated_at“,2017-07-28 07:32: 19 UTC]]
我想使这个多重彩
- 名称
- 姓
- 昵称
我试着在view.slim
:
= simple_form_for @contact_form do |f|
= f.input :first_name, label: 'First name', placeholder: 'Enter first name...'
= f.input :last_name, label: 'Last name', placeholder: 'Enter last name...'
= f.input :nickname, label: 'Nickname', placeholder: 'Enter nickname...'
= f.input :multiple_choice, :collection => ['Name'], :as => :radio_buttons
= f.input :multiple_choice, :collection => ['Surname'], :as => :radio_buttons
= f.input :multiple_choice, :collection => ['Nickname'], :as => :radio_buttons
但它节省了一个空字符串通过ce。
谢谢!
我找到了单选按钮的解决方案:
view.slim:
p Name
= f.radio_button :call_time, 'first_name'
p Surname
= f.radio_button :call_time, 'last_name'
p Nickname
= f.radio_button :call_time, 'nickname'
= f.button :submit
邮政原木沿控制器代码指一经制成烧成提交 – Pavan
编辑,谢谢! –
发布完整的日志请包括一切。 – Pavan