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

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

内容简介:翻译自: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


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

查看所有标签

猜你喜欢:

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

Kubernetes权威指南

Kubernetes权威指南

龚正、吴治辉、王伟、崔秀龙、闫健勇、崔晓宁、刘晓红 / 电子工业出版社 / 2016-10 / 99

Kubernetes是由谷歌开源的Docker容器集群管理系统,为容器化的应用提供了资源调度、部署运行、服务发现、扩容及缩容等一整套功能。《Kubernetes权威指南:从Docker到Kubernetes实践全接触(第2版)》从一个开发者的角度去理解、分析和解决问题,囊括了Kubernetes入门、核心原理、实践指南、开发指导、高级案例、运维指南及源码分析等方面的内容,图文并茂、内容丰富、由浅入......一起来看看 《Kubernetes权威指南》 这本书的介绍吧!

URL 编码/解码
URL 编码/解码

URL 编码/解码

MD5 加密
MD5 加密

MD5 加密工具

正则表达式在线测试
正则表达式在线测试

正则表达式在线测试