

Railsで  
"2017-3-6"などのデータをunixtimeで保存する場合、どこで処理を持つのが一般的でしょうか？

[code]

    def set_params
      tmp = params.require(:user).permit(
        :name,
        :date
      )
      tmp[:date] = DateTime.parse(tmp[:date]).to_i unless tmp[:date].blank? 
      return tmp
    end
    
[/code]

現状上記のようにして、set_paramsを

[code]

    User.assign_attributes set_params
    
[/code]

のようにしているのですが、何か良い方法ありましたらご教示頂けますと幸いです。


CC BY-SA 3.0
2018-03-06T10:47:23.617
42168
2018-07-07T18:17:00.910
11167
question
ruby-on-rails
Railsで日付文字列をunixtimeで保存する


Rails は、その永続層には何かしらの RDB を用いる設計です。

RDB では、大概 TIMESTAMP のデータ型が取り扱えます。これは、 unixtime でデータの日付を保管することに相当します。
(プラス、もろもろの日付として取り扱うための各種関数などが使えて、便利です。)

なので、普通は、「UNIX TIME を保存する」ことはあまりないのですが、何か、これをやらなければならない事情などありますでしょうか?
(自分が想像できていないだけかもしれません)

もしそうであるならば、質問にを「編集」し、何故 Unix time を保存する必要が出てきたのかを、追記いただけますでしょうか。


CC BY-SA 4.0
2018-07-07T18:17:00.910
45395
2018-07-07T18:17:00.910
754
42168
answer