logo头像
Snippet 博客主题

Python3 - 创建并配置Django项目

一、创建Django项目

用命令行创建Django项目

1. Windows环境

1
2
3
4
5
6
7
8
9
10
11
12
13
1. 创建虚拟环境, 目录名venv
$ python -m venv venv
2. 查看虚拟目录
$ cd venv
3. 激活虚拟环境
$ cd Scripts 切换到脚本
$ activate 激活虚拟环境
4. 在虚拟环境安装django并指定版本号(最新版不用指定)
$ pip install django[==版本号]
5. 查看django版本(可跳过此步骤)
$ django-admin --version
6. 开启一个项目
$ django-admin startproject hello_django .

2. MAC / Linux 环境

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
1. 创建项目文件夹
$ mkdir hello_django
2. 切换到项目目录
$ cd hello_django/
3. 使用venv模块创建虚拟环境,目录名venv
# pythonX 早期版本建虚拟环境
# $pip install virtualenv
# pythonX -m irtualenv venv
$ python3 -m venv venv
4. 激活虚拟环境
$ source venv/bin/activate
5. 更新pip到最新版本(如果已经是最新版则跳过次步)
$ python -m pip install --upgrade pip
6. 使用pip安装django
$ pip install django[==版本号]
7. 通过安装django时安装的脚本工具django-admin检查django版本(可跳过此步骤)
$ django-admin --version
8. 开启一个项目
$ django-admin startproject hello_django .

使用pycharm创建Django项目

  1. 点击Create New Project 创建一个新项目
    1

  2. 点击 Django → 选择项目存储路径
    如果想在创建项目是新建一个应用, 点击More Setting, 输入应用的名称

    点击 右下角Greate, 创建项目
    2


二、配置Django项目

1. 创建一个名为cars的应用

python manager.py startapp cars

setting.py

1
2
3
4
5
# 添加应用配置
# 每新建一个应用就要添加一个
INSTALLED_APPS = [
'cars.apps.CarsConfig',
]

2. 创建数据库

创建名为cars的数据库, 并指定utf8字符集

3. 配置数据库

settings.py

1
2
3
4
5
6
7
8
9
10
DATABASES = {
'default': {
'ENGINE': 'django.db.backends.mysql',
'NAME': 'cars', # 与数据库名称对应
'HOST': 'localhost',
'PORT': 3306,
'USER': 'root',
'PASSWORD': 'root',
}
}

|— cars

|—  _\_init\_\_.py
1
2
3
import pymysql
#把pymysql方式当成是mysqldb一样使用
pymysql.install_as_MySQLdb()

4. 创建模型

models.py

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
from django.db import models

class Record(models.Model):

no = models.AutoField(primary_key=True,verbose_name='编号')
car_no = models.CharField(max_length=7, verbose_name='车牌号')
cause = models.CharField(max_length=100, verbose_name='违章原因')
date = models.DateTimeField(auto_now_add=True, verbose_name='违章日期',db_column='happen_date')
way = models.CharField(max_length=100, verbose_name='处罚方式')
dispose = models.BooleanField(default=False, verbose_name='是否受理')

class Meta:
db_table = 'tb_car_record'
verbose_name_plural = '违章记录'
ordering = ('no', )

6. 迁移数据库

$ python manage.py makemigrations hrs # 生成迁移
$ python manage.py migrate # 执行迁移

7. 创建管理员

$ python manage.py createsuperuser
配置 Username / Email address / Password

8. 配置管理员界面

admin.py

1
2
3
4
5
6
7
8
9
10
11
12
from django.contrib import admin
from cars.models import Record

class RecordAdmin(admin.ModelAdmin):
# 添加管理员页面需要显示的列
list_display = ('no', 'car_no', 'cause', 'date', 'way', 'dispose')
# 指定搜索列
search_fields = ('car_no',)
# 指定排序方式
ordering = ('no',)

admin.site.register(Record, RecordAdmin)

9. 创建视图文件夹 templates / 静态文件夹 static (与应用/项目目录同级)

|— cars

|— static (存放静态文件 css / js / jQuery)

|— templates (存放html页面, 使用pycharm创建项目会自动添加)

setting.py

1
2
# 添加static文件夹路径
STATICFILES_DIRS = [os.path.join(BASE_DIR, 'static')]

如果使用命令行创建Django项目

还需要在setting.py中添加如下配置:

​ ‘DIRS’: [os.path.join(BASE_DIR, ‘templates’)]

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
TEMPLATES = [
{
'BACKEND': 'django.template.backends.django.DjangoTemplates',
# 添加templates文件夹路径
'DIRS': [os.path.join(BASE_DIR, 'templates')]
,
'APP_DIRS': True,
'OPTIONS': {
'context_processors': [
'django.template.context_processors.debug',
'django.template.context_processors.request',
'django.contrib.auth.context_processors.auth',
'django.contrib.messages.context_processors.messages',
],
},
},
]

评论系统未开启,无法评论!