MYSQL에 "date_added"라는 필드가 있습니다. Time.now.to_i 값을 기본값 (즉, 레코드가 추가 된 시간)으로 사용하기를 원합니다. 비슷한 컬럼이 ActiveRecord에서 무료로 추가되었다는 것을 알지만, 이것을 무시하면 ... 어떻게이 디폴트 값을 추가 할 수 있습니까?ActiveRecord를 사용하여 열의 현재 값을 현재 시간으로 설정하는 방법은 무엇입니까?
: 기본값 => ???
MYSQL에 "date_added"라는 필드가 있습니다. Time.now.to_i 값을 기본값 (즉, 레코드가 추가 된 시간)으로 사용하기를 원합니다. 비슷한 컬럼이 ActiveRecord에서 무료로 추가되었다는 것을 알지만, 이것을 무시하면 ... 어떻게이 디폴트 값을 추가 할 수 있습니까?ActiveRecord를 사용하여 열의 현재 값을 현재 시간으로 설정하는 방법은 무엇입니까?
: 기본값 => ???
당신은 before_create
를 사용할 수 있습니다
class SomeModel < ActiveRecord::Base
before_create :set_date_added
protected
def set_date_added
self.date_added = Time.now.to_i
end
end
이는 객체가 처음으로 정확하게 당신이 원하는 조건을 저장 직전에 호출됩니다.
양자 택일로, 당신은 여기에 대한 답변에 따라 date_added
에 기본 액티브 created_at
의 이름을 변경하기 위해 해킹을 사용할 수 있습니다 Renaming the created_at, updated_at columns of ActiveRecord/Rails 콜백에 대한 자세한 내용은 http://api.rubyonrails.org/classes/ActiveRecord/Callbacks.html를 참조하십시오.