我正在尝试从下拉列表中为 db 中的用户(如学生、教师)保存多个角色。我正在使用“选择”控件<%= f.select :role,["Teacher","Student"],{},{:multiple => true ,:required => true} %>
在数据库中保存多个值。目前我可以从下拉列表中选择多个值并以下列格式保存在数据库中"---\n- ''\n- Teacher\n- Student\n">
。但我只想保存[老师学生]。我不知道如何删除“---\n-”。我尝试使用 chomp,检查方法,但没有运气。一件事,“选择控件在数组中接受输入值,但我在用户表中的角色列是字符串类型。
_form.html.erb
<div>*<%= f.label :role %><br />
<%= f.select :role,["Teacher","Student"],{},{:multiple => true ,:required => true} %>
</div>
架构.rb
create_table "users", :force => true do |t|
t.string "email", :default => "", :null => false
t.string "encrypted_password", :default => "", :null => false
t.string "reset_password_token"
t.datetime "reset_password_sent_at"
t.datetime "remember_created_at"
t.integer "sign_in_count", :default => 0
t.datetime "current_sign_in_at"
t.datetime "last_sign_in_at"
t.string "current_sign_in_ip"
t.string "last_sign_in_ip"
t.datetime "created_at", :null => false
t.datetime "updated_at", :null => false
t.boolean "is_admin"
t.string "username"
t.string "first_name"
t.string "last_name"
t.string "contact_no"
t.date "birth_date"
t.boolean "is_active"
t.date "joining_date"
t.string "avatar_url"
t.boolean "is_hr"
t.boolean "is_manager"
t.string "designation"
t.string "user_code"
t.string "user_role"
t.string "role"
end
保存在数据库中的角色
role: "---\n- ''\n- Teacher\n- Student\n">
"---\n- ''\n- Teacher\n- Student\n">
目前,我能够以格式保存下拉列表中的值。但我想像老师学生一样保存他们,没有任何逗号。知道如何在字符串列中保存数组值。
谢谢。