每当我不得不在 Rails 中执行HABTM时,我总是想知道是否可以从命令行生成所需的迁移。
我希望通过做这样的事情来节省时间:
rails g migration tracks_podcasts tracks:references podcasts:references id:false
上面的代码不起作用,它的几个变体也不起作用(有和没有 id:false 指令)
每当我不得不在 Rails 中执行HABTM时,我总是想知道是否可以从命令行生成所需的迁移。
我希望通过做这样的事情来节省时间:
rails g migration tracks_podcasts tracks:references podcasts:references id:false
上面的代码不起作用,它的几个变体也不起作用(有和没有 id:false 指令)
根据 rails 文档,这应该可以,但是您希望将 'references' 替换为 'integer'。'references' 不是有效的数据类型。并摆脱 id:false 条目。引用和 :id => false 应在生成后的迁移中指定。您将基本上生成包含所需所有字段的基本迁移,然后打开迁移并对其进行修改以满足您的规范。
Usage:
rails generate migration NAME [field:type field:type] [options]
Options:
-o, --orm=NAME # Orm to be invoked
# Default: active_record
Runtime options:
-f, [--force] # Overwrite files that already exist
-p, [--pretend] # Run but do not make any changes
-q, [--quiet] # Supress status output
-s, [--skip] # Skip files that already exist
Description:
Create rails files for migration generator.