Ruby / Rails – Active Record Db迁移到MySQL – 时间戳类型?
我正在使用Redmine,当我运行rake db migration时,数据库在mysql ok中创建。 我的问题是日期字段是错误的。 我希望它是一个mysql时间戳类型,但它是MySQL中的DATETIME类型 。
class CreateChats < ActiveRecord::Migration def self.up create_table :chats do |t| t.column :message, :string t.column :user, :integer t.column :sendDate, :timestamp end end def self.down drop_table :chats end end
另外,如果我对此迁移进行了更改,我如何让它重新制作表(删除它不起作用)?
如果需要,您始终可以插入具有自定义类型的列。 符号名称会自动转换为ActiveRecord定义的内容,但如果使用普通字符串,则按原样进入:
t.column :ar_timestamp, :timestamp t.column :mysql_timestamp, 'timestamp'
你得到的是ar_timestamp
是通常的DATETIME
类型,其中mysql_timestamp
被定义为TIMESTAMP
。