根据MySQL参考手册,数据类型为“年”。我想在我的Rails应用程序中使用它,但是当我运行rails db:migrate
时,它失败并显示:
NoMethodError: undefined method `year' for #<ActiveRecord::ConnectionAdapters::MySQL::TableDefinition:0x000056047e3c6120>
Create_book迁移文件:
class CreateBooks < ActiveRecord::Migration[5.2]
def change
create_table :books do |t|
t.string :name
t.year :release
t.references :genre, foreign_key: true
t.references :author, foreign_key: true
t.timestamps
end
end
end
答案 0 :(得分:0)
如果您使用的是DateTime
,那么t.datetime
将为您服务。
如果仅存储年份,则可以整数形式存储,请使用t.integer
,它只会存储年份。也许mysql的数据类型为year
,但这里的mysql连接适配器的ruby对象却没有。