通过数据库对Django进行删除字段和删除模型的操作

yipeiwu_com6年前Python基础

删除字段

从Model中删除一个字段要比添加容易得多。 删除字段,仅仅只要以下几个步骤:

  •     删除字段,然后重新启动你的web服务器。
  •     用以下命令从数据库中删除字段:
ALTER TABLE books_book DROP COLUMN num_pages;

请保证操作的顺序正确。 如果你先从数据库中删除字段,Django将会立即抛出异常。
删除多对多关联字段

由于多对多关联字段不同于普通字段,所以删除操作是不同的。

  •     从你的模型中删除ManyToManyField,然后重启web服务器。
  •     用下面的命令从数据库删除关联表:
DROP TABLE books_book_authors;

像上面一样,注意操作的顺序。
删除模型

删除整个模型要比删除一个字段容易。 删除一个模型只要以下几个步骤:

  •     从文件中删除你想要删除的模型,然后重启web 服务器models.py
  •     然后用以下命令从数据库中删除表:
DROP TABLE books_book;

  •     当你需要从数据库中删除任何有依赖的表时要注意(也就是任何与表books_book有外键的表 )。

正如在前面部分,一定要按这样的顺序做。

相关文章

Python使用combinations实现排列组合的方法

好久没有写博客了!昨天小牛在上海举办了牛友见面会,现场优惠还是比较大,心仪已久加上一时脑热就入手了。以为会有多么开心,其实目前最大的感受就是焦虑!担心电动车被偷,担心电池被偷,担心路上突...

python 模拟贷款卡号生成规则过程解析

前言 笔者在测试某web系统的过程中,需要用到“贷款卡号”,且此贷款卡号仅能使用一次,保存过后下一次无法再次使用相同的卡号。 遂决定依据它的生成规则,自己写一段代码来实现。 同时为了方便...

Python与Java间Socket通信实例代码

Python与Java间Socket通信   之前做过一款Java的通讯工具,有发消息发文件等基本功能.可大家也都知道Java写的界面无论是AWT或Swing,那简直不是人看的,对于我们...

Python并行分布式框架Celery详解

Python并行分布式框架Celery详解

Celery 简介 除了redis,还可以使用另外一个神器---Celery。Celery是一个异步任务的调度工具。 Celery 是 Distributed Task Queue,分...

Python切片知识解析

切片原型 strs = ‘abcdefg' Strs[start: end:step] 切片的三个参数分别表开始,结束,步长 第一位下标为0,end位不取,如strs[1:3] = ‘b...