簡體   English   中英

Rails日期選擇參數允許

[英]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.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM