[英]Rails date select parameter permit
我正在使用以下代碼將date參數發送到rails。
<%= form_for @user, remote: true do |f| %>
<div class="row">
<select class="form-control" id="years" name="user[birthday(1i)]">
</select>
<select class="form-control" id="months" name="user[birthday(2i)]">
</select>
<select class="form-control" id="days" name="user[birthday(3i)]">
</select>
</div>
<% end %>
但是后端這樣接收
{
"user"=>
"birthday(1i)"=>"2018",
"birthday(2i)"=>"8",
"birthday(3i)"=>"13"
}
如何使其成為哈希,因此我可以在rails中使用strong parameter
。
EX:
def update_params
params.permit(:birthday)
end
您應該能夠將此作為date
存儲在數據庫中,並在表單內使用date_select
。
schema.rb
create_table "users", force: :cascade do |t|
t.date "birthday"
end
調節器
def user_params
params.require(:user).permit(:birthday)
end
視圖
<%= form_for @user, remote: true do |f| %>
<div class="row">
<%= f.date_select :birthday, {
order: [:month, :day, :year],
date_separator: "/",
prompt: {
month: 'mm',
day: 'dd',
year: 'yyyy',
},
} %>
</div>
<% end %>
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.