【发布时间】:2017-07-28 07:49:29
【问题描述】:
我正在尝试使用 simple_form 制作一个表单,并且有多项选择部分。所有数据都已保存(我有姓名、姓氏、电子邮件...),但多选单选按钮始终为空字符串。 如何制作一个简单的选择列表并保存该选择?
架构:
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
日志:
在 2017-07-28 17:32:19 +1000 开始为 ::1 发布“/greeting” 由 GreetingsController#create 作为 HTML 参数处理: {"utf8"=>"✓", "authenticity_token"=>"...", "问候"=>{"first_name"=>"John", "last_name"=>"Doe", "昵称"=>"约翰尼", "multiple_choice"=>""}, "multiple_choice"=>"Name", "commit"=>"Submit"} (0.2ms) BEGINSQL (0.4ms)插入“问候”(“first_name”,“last_name”, “昵称”、“multiple_choice”、“created_at”、“updated_at”)值(1 美元, $2, $3, $4, $5, $6, $7) 返回 "id" [["first_name", "John"], ["last_name", "Doe"], ["nickname", "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
但它保存了一个空字符串。
谢谢!
【问题讨论】:
-
发布您的控制器代码以及表单提交时触发的日志
-
发布完整的日志,请包括所有内容。
-
我按要求粘贴了日志,希望对您有所帮助。谢谢!
-
您可以发布您设置的简单表格吗?整个视图?
-
我更新了,希望对你有帮助。
标签: ruby-on-rails postgresql simple-form