0

そのため、通常はdate_selectモデルのフォームでRailsアプリケーションのヘルパーを使用しますが、作成した最新のアプリケーションでは、ドロップダウンごとに個別のcss IDを指定する必要がありました(月、日、年)。で可能date_selectです。代わりに、、、、およびヘルパーを使用してselect_monthselect_dayますselect_yeardatetimeここに問題があります:データベース内の1つのレコードをすべてに記述させるにはどうすればよいですか?

(ちなみに、この質問を見てきましたが、私にはかなり役に立たないように見えます。さらに、これを処理するハッキーなjQueryのようなことはしたくありません。)

これが私がこれまでに持っているものです:

#default_time_for is just a helper method that returns the default time for the specified "period" of time (month,day,etc.)

<%= select_month(default_time_for(:month)) %>
<%= select_day(default_time_for(:day)) %> 
<%= select_year(default_time_for(:year), {:start_year => Time.now.year-18, :end_year => 1930}) %>
4

1 に答える 1

0

サーバー側でそれらを組み合わせます。

require 'date'

def update
  date = Date.parse(params[:year] + params[:month] + params[:day])

  # Add to object and save
end

dateそれが割り当てたいフィールドであると仮定すると、次のように一括割り当てを行うことができます。

def update
  date = Date.parse(params[:year] + params[:month] + params[:day])
  params = params.merge( { :user => { :date => date }})

  @user = User.find(params[:id])
  if @user.update_attributes(params)
    # save was good
  else
    # save was bad
  end
end

また、上記のコードを使用する場合は、Mass Assignment によって発行されたセキュリティに精通し、軽減されていることを確認してください。

于 2012-06-12T17:21:46.233 に答える