1

再解析したい日時がある次のシナリオがあります。以下をirbで動作させることができますが、postパラメーターを操作するときにnil値に問題があるようです。例のために。

これはirbで機能します:

DateTime.strptime("10/25/2012 04:27 pm", "%m/%d/%Y %I:%M %P").strftime("%Y-%m-%d %H:%M:00")
=> "2012-10-25 16:27:00"

ただし、params 値にアクセスしようとすると、値自体にアクセスできないようです。例のために。

def create
  @shipment = params[:shipment]
  @shipment.ship_date = format_date(@shipment.ship_date)
  .
  .
  .
 end     

def format_date(date)
  DateTime.strptime(date, "%m/%d/%Y %I:%M %P").strftime("%Y-%m-%d %H:%M:00")
end 

文字列を使用して変数を手動で設定すると、機能します。パラメータを取り除こうとすると、nilのようです。@shipment.ship_date.to_s を実行しても、それは "" に変換されます。ブラウザーの Web インスペクターに表示されるように、パラメーターが空ではないことがわかっています。パラメータ値の操作方法がわかりません。

4

1 に答える 1

1
format_date(params["shipment"]["ship_date"])

動作するはずです

于 2012-10-16T18:34:28.907 に答える