如何将时间戳插入rails数据库列

2024-01-28

我刚刚开始使用 RoR,有一个问题:如何将当前时间戳(或任何类型的时间)插入模型中?下面您可以看到日志函数创建。

def create
    @log = Log.new(params[:log])

    respond_to do |format|
      if @log.save
        format.html { redirect_to @log, notice: 'Log was successfully created.' }
        format.json { render json: @log, status: :created, location: @log }
      else
        format.html { render action: "new" }
        format.json { render json: @log.errors, status: :unprocessable_entity }
      end
    end
  end

Rails 模型生成器自动创建created_at and updated_at datetime数据库中的字段为您提供。这些字段分别在创建或更新记录时自动更新。

如果您想手动创建时间戳,请添加日期时间列(例如timestamp_field)到数据库并使用before_save模型中的回调。

class Log < ActiveRecord::Base
  before_save :generate_timestamp

  def generate_timestamp
    self.timestamp_field = DateTime.now
  end
end
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

如何将时间戳插入rails数据库列 的相关文章

随机推荐