Django的数据库配置
首先创建数据库的配置文件在根目录下的setting.py 文件中的DATABASES,如下:
因为Django 默认使用的数据库是sqlite3,大家也可以使用其他数据库(mysql等)
DATABASES = {
'default': {
'ENGINE': 'django.db.backends.sqlite3',
'NAME': os.path.join(BASE_DIR, 'db.sqlite3'),
}
}
创建数据库命令
就会在 项目的根目录下面 生成一个配置文件中指定的数据库文件 db.sqlite3
python manage.py migrate
创建数据表
- 1、在对应的目录文件中的models.py,写上这段代码,定义数据库表字段
from django.db import models
class Customer(models.Model):
# 名称
name = models.CharField(max_length=200)
# 联系电话
phonenumber = models.CharField(max_length=200)
# 地址
address = models.CharField(max_length=200)
- 2、定义好表以后,在项目的配置文件 settings.py 中, INSTALLED_APPS 配置项 加入如下内容:
INSTALLED_APPS = [
'django.contrib.admin',
'django.contrib.auth',
'django.contrib.contenttypes',
'django.contrib.sessions',
'django.contrib.messages',
'django.contrib.staticfiles',
# 这段代码,对应修改一下
'commons.apps.CommonsConfig',
]
- 3、在项目根目录下执行命令
python manage.py makemigrations commons
# 执行后得到以下代码,说明成功定义好表字段
Migrations for 'commons':
commons\migrations\0001_initial.py
- Create model Customer
- 4、这个脚本就是相应要进行的数据库操作代码。
python manage.py migrate
Operations to perform:
Apply all migrations: admin, auth, common, contenttypes, sessions
Running migrations:
Applying common.0001_initial... OK
Django Admin 管理数据
Django提供了一个管理员操作界面可以方便的 添加、修改、删除你定义的 model 表数据。首先,我们需要创建 一个超级管理员账号。进入到项目的根目录,执行如下命令,依次输入你要创建的管理员的 登录名、email、密码
python manage.py createsuperuser
You have 1 unapplied migration(s). Your project may not work properly until you apply the migrations for app(s): commons.
Run 'python manage.py migrate' to apply them.
Username (leave blank to use 'du413'): admin
Email address: admin@email.com
Password:
Password (again):
The password is too similar to the username.
This password is too short. It must contain at least 8 characters.
This password is too common.
Bypass password validation and create user anyway? [y/N]: y
Superuser created successfully.
- 然后我们需要修改应用里面的 管理员 配置文件 commons/admin.py,注册我们定义的model类。这样Django才会知道
from django.contrib import admin
from .models import Customer
admin.site.register(Customer)
这个时候打开:
http://127.0.0.1:8800/admin
即可看到管理员界面
- 如果你是中文的操作系统,想使用中文的admin界面,应该在配置文件 settings.py 中 MIDDLEWARE 最后加入如下配置
MIDDLEWARE = [
'django.middleware.security.SecurityMiddleware',
'django.contrib.sessions.middleware.SessionMiddleware',
'django.middleware.common.CommonMiddleware',
'django.contrib.auth.middleware.AuthenticationMiddleware',
'django.contrib.messages.middleware.MessageMiddleware',
'django.middleware.clickjacking.XFrameOptionsMiddleware',
# admin界面语言本地化
'django.middleware.locale.LocaleMiddleware',
]