在Rails 4文档(
http://guides.rubyonrails.org/migrations.html#creating-a-join-table)中,我看到要删除表或连接表,可以在命令行中使用以下方法:
drop_table和drop_join_table.
然而,它进一步补充说,必须“提供一个块” – 我不知道执行中的样子.
另外,当我说丢弃时,我的意思是从我的数据库中删除它.我知道我无法删除迁移,并且回滚迁移是不明智的,因为它会影响协作工作 – 所以我希望尽可能避免删除迁移文件并回滚迁移.
创建迁移以填充数据库时,我犯了一个错误.我知道如何修改表的列(添加新的,重命名和删除它们).我只是不知道如何清除表格.
感谢您考虑我的问题.
解决方法
drop_join_table方法在文档
drop_join_table中定义
它需要表1,表2的名称.示例:您有2个名为categories和products的表,以及名为categories_products的连接表
因此,使用您喜欢的任何名称创建迁移文件,然后编写代码以删除连接表:
def change drop_join_table :categories,:products end
您可以将其他选项传递给drop_join_table方法,这些选项与create_join_table
相同.请查看此方法以查看更多选项.
例如,如果您的连接表没有遵循约定的名称,例如分类,您可以指定它:
def change drop_join_table :categories,:products,table_name: categorization end
要删除表,使用drop_table
方法更简单:
def change drop_table :table_name end
其他选项可以传递给drop_table方法,就像create_table
方法的选项一样
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。