📅  最后修改于: 2023-12-03 14:49:29.347000             🧑  作者: Mango
在本文中,我们将学习如何从头开始在Django中使用Postgres数据库来重建一个数据库。我们将探讨以下主题:
首先,需要安装Postgres。在Ubuntu上安装Postgres可以通过以下命令:
sudo apt-get install postgresql
安装完成后,需要创建一个用户,并为该用户分配一个密码:
sudo -u postgres createuser --interactive
sudo -u postgres psql
ALTER USER myuser WITH ENCRYPTED PASSWORD 'mypassword';
接下来,我们需要创建一个Django项目:
django-admin startproject myproject
cd myproject
为了将Django与Postgres数据库关联起来,需要在settings.py
文件中进行配置。打开settings.py
文件,并更改以下内容:
DATABASES = {
'default': {
'ENGINE': 'django.db.backends.postgresql',
'NAME': 'mydatabase',
'USER': 'myuser',
'PASSWORD': 'mypassword',
'HOST': 'localhost',
'PORT': '5432',
}
}
这将告诉Django使用Postgres数据库作为默认数据库。
接下来,我们需要创建一个模型。在Django中,模型是使用Python编写的类,它定义了需要在数据库中存储的数据和其属性。在项目的根目录中运行以下命令来创建一个简单的模型:
python manage.py startapp myapp
打开myapp/models.py
,并添加以下内容:
from django.db import models
class Book(models.Model):
title = models.CharField(max_length=100)
author = models.CharField(max_length=100)
pub_date = models.DateField()
def __str__(self):
return self.title
这将创建一个名为Book
的模型,其中包括一个title
、一个author
和一个pub_date
字段,用于存储书籍的信息。
接下来,我们需要进行数据迁移。数据迁移是将模型更改应用于数据库的过程。在项目的根目录中,运行以下命令:
python manage.py makemigrations myapp
python manage.py migrate
这将在数据库中创建一个新的myapp_book
表,我们可以使用以下命令来验证数据库中是否在成功地创建了Book
表:
psql mydatabase
\dt
在终端中,将会显示出来一个myapp_book
表。
本文介绍了如何从头开始使用Postgres数据库在Django中创建一个新的数据库。我们探讨了安装Postgres、创建Django项目、配置Django和Postgres以及如何创建模型和进行数据迁移。最终,在数据库中成功创建了一个新的Book
表,该表具有title
、author
和pub_date
三个字段,用于存储书籍的信息。