Django 2.0:创建项目流程

Django是基于MVC(Model-View-Controlller)模式的框架,处理请求的示意图

Django文档大体上也分为:Model层、View层、模板层和Form模块。剩下的部分都是功能文档,比如分页和缓存等。

创建环境

创建虚拟环境

激活虚拟环境

pip install django    [~=2.0]

创建项目根目录:mkdir student_house

cd student_house

django-admin startproject student_sys

得到下面的目录结构

创建APP

cd student_sys中通过上一步创建好的manage.py创建一个APP:

python manage.py startapp student

现在可以正式编写代码

从Model层开始

在文件student_house/student_sys/student/models.py

from django.db import models

class Student(models.Model):
	SEX_ITEMS = [
		(1, '男'),
		(2, '女'),
		(0, '未知'),
	]
	STATUS_ITEMS = [
		(0, '申请'),
		(1, '通过'),
		(2, '拒绝'),
	]
	name = models.CharField(max_length=128, verbose_name="姓名")
	sex = models.IntegerField(choices=SEX_ITEMS, verbose_name="性别")
	profession = models.CharField(max_length=128, verbose_name="职业")
	email = models.EmailField(verbose_name="Email")
	qq = models.CharField(max_length=128, verbose_name="QQ")
	phone = models.CharField(max_length=128, verbose_name="电话")
	status = models.IntegerField(choices=STATUS_ITEMS, default=0, verbose_name="审核状态")
	created_time = models.DateTimeField(auto_now_add=True, editable=False, verbose_name="创建时间")

	def __str__(self):
		return '<Student: {}>'.format(self.name)

	class Meta:
		verbose_name = verbose_name_plural = "学员信息"

再编写admin.py

from django.contrib import admin
from .models import Student

class StudentAdmin(admin.ModelAdmin):
	list_display = ('id', 'name', 'sex', 'profession', 'email', 'qq', 'phone', 'status', 'created_time')
	list_filter = ('sex', 'status', 'created_time')
	search_fields = ('name', 'profession')
	fieldsets = (
		(None, {
			'fields': (
				'name', ('sex', 'profession'),
				('email', 'qq', 'phone'),
				'status',
			)
		}),
	)

admin.site.register(Student, StudentAdmin)

把student这个App放到settings.py中

INSTALLED_APPS = [
    'student',
    'django.contrib.admin',
    'django.contrib.auth',
    'django.contrib.contenttypes',
    'django.contrib.sessions',
    'django.contrib.messages',
    'django.contrib.staticfiles',
]

好了,后台部分完成了。接着,我们通过下面的命令创建表以及超级用户。

cd student_house/student_sys/

python manage.py makemigrations:创建数据库迁移文件

python manage.py migrate:创建表

python manage.py createsuperuser:根据提示,输入用户名、邮箱和密码

通过python manage.py runserver命令启动项目后,访问http://127.0.0.1:8000/admin/

基础配置(中文)

上面的配置应该是英文的,并且时区也是UTC时区

在settings中做如下配置:

LANGUAGE_CODE = 'zh-hans'  # 语言
TIME_ZONE = 'Asia/Shanghai'   # 时区
USE_I18N = True   # 语言
USE_L10N = True   # 数据和时间格式
USE_TZ = True     # 启用时区

以上admin基本就满足了简单的后台,这也是Django admin被称为“杀手锏”的原因

学员管理系统的前台开发

在student/views.py中编写首页

 

 

 

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值