【Django】Django迁移数据库

时间:2023-03-10 04:22:13
【Django】Django迁移数据库

我们已经编写了博客数据库模型的代码,但那还只是 Python 代码而已,Django 还没有把它翻译成数据库语言,因此实际上这些数据库表还没有真正的在数据库中创建

为了让 Django 完成翻译,创建好这些数据库表,我们再一次请出我的工程管理助手 manage.py。激活虚拟环境,切换到 manage.py 文件所在的目录下,分别运行 python manage.py makemigrations 和 python manage.py migrate 命令。运行第一个命令后,会在 blog 应用的 migrations\ 目录下生成了一个 0001_initial.py 文件,这个文件是 Django 用来记录我们对模型做了哪些修改的文件。目前来说,我们在 models.py 文件里创建了 3 个模型类,Django 把这些变化记录在了 0001_initial.py 里。

输入第一个命令时如图(应用blog已在setting中model数据模型已建立)

【Django】Django迁移数据库

百度后,试了下下面的

【Django】Django迁移数据库

用 Django 的方式操作数据库

存数据(这打开了一个交互式命令行。首先我们来创建一个分类和一个标签,导入 3 个之前写好的模型类,然后实例化了一个 Category 类和一个 Tag 类,为他们的属性 name 赋了值。为了让 Django 把这些数据保存进数据库,调用实例的 save 方法即可。)

【Django】Django迁移数据库

再创建一篇文章试试,但创建文章之前,我们需要先创建一个 User,用于指定文章的作者。创建 User 的命令 Django 已经帮我们写好了,依然是通过 manage.py 来运行。首先按住 Ctrl + c 退出命令交互栏(一次退不出就连续多按几次),运行 python manage.py createsuperuser 命令并根据提示创建用户:(用户名user,密码8位)

【Django】Django迁移数据库

再次运行 python manage.py shell 进入 Python 命令交互栏,开始创建文章: