ruby-on-rails-4 – Rails 4:如何从数据库中删除或删除(连接)表表?

栏目: Ruby · 发布时间: 6年前

内容简介:翻译自:https://stackoverflow.com/questions/20578157/rails-4-how-to-drop-or-remove-join-tables-tables-from-database
在Rails 4文档( http://guides.rubyonrails.org/migrations.html#creating-a-join-table

)中,我看到要删除表或连接表,可以在命令行中使用以下方法:

drop_table和drop_join_table.

然而,它进一步补充说,必须“提供一个块” – 我不知道执行中的样子.

无论这里是我的问题:如何删除表或删除连接表?

另外,当我说丢弃时,我的意思是从我的数据库中删除它.我知道我无法删除迁移,并且回滚迁移是不明智的,因为它会影响协作工作 – 所以我希望尽可能避免删除迁移文件并回滚迁移.

创建迁移以填充数据库时,我犯了一个错误.我知道如何修改表的列(添加新的,重命名和删除它们).我只是不知道如何清除表格.

感谢您考虑我的问题.

我想从我的数据库中完全删除一个表.我的应用程序在Rails 4上运行.

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 方法的选项一样

翻译自:https://stackoverflow.com/questions/20578157/rails-4-how-to-drop-or-remove-join-tables-tables-from-database


以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持 码农网

查看所有标签

猜你喜欢:

本站部分资源来源于网络,本站转载出于传递更多信息之目的,版权归原作者或者来源机构所有,如转载稿涉及版权问题,请联系我们

Python深度学习

Python深度学习

[美] 弗朗索瓦•肖莱 / 张亮 / 人民邮电出版社 / 2018-8 / 119.00元

本书由Keras之父、现任Google人工智能研究员的弗朗索瓦•肖莱(François Chollet)执笔,详尽介绍了用Python和Keras进行深度学习的探索实践,涉及计算机视觉、自然语言处理、生成式模型等应用。书中包含30多个代码示例,步骤讲解详细透彻。由于本书立足于人工智能的可达性和大众化,读者无须具备机器学习相关背景知识即可展开阅读。在学习完本书后,读者将具备搭建自己的深度学习环境、建......一起来看看 《Python深度学习》 这本书的介绍吧!

JSON 在线解析
JSON 在线解析

在线 JSON 格式化工具

UNIX 时间戳转换
UNIX 时间戳转换

UNIX 时间戳转换