下面是“python3.6+django2.0开发一套学员管理系统”的完整攻略。
1.环境准备
首先需要在本地安装Python3.6,并且安装Django2.0以及其他必要的扩展库,如Pillow,Django-crispy-forms等。可以通过以下命令完成环境准备:
# 安装Python3.6
$ sudo apt-get install python3.6
# 创建虚拟环境
$ virtualenv envname -p python3.6
# 激活虚拟环境
$ source envname/bin/activate
# 安装Django2.0
$ pip install Django==2.0
# 其他必要的扩展库
$ pip install Pillow
$ pip install django-crispy-forms
2.创建Django项目
使用以下命令,创建一个名为“student”的Django项目:
$ django-admin startproject student
3.创建Django应用
进入到Django项目的根目录,使用以下命令创建一个名为“users”的Django应用:
$ cd student
$ python manage.py startapp users
4.编写模型
在“users/models.py”文件中,定义一个名为Student的模型,如下所示:
from django.db import models
class Student(models.Model):
name = models.CharField(max_length=100)
gender = models.BooleanField()
birthday = models.DateField()
email = models.EmailField()
phone = models.CharField(max_length=20)
address = models.CharField(max_length=200)
created = models.DateTimeField(auto_now_add=True)
updated = models.DateTimeField(auto_now=True)
class Meta:
ordering = ['created']
5.创建数据库表
在完成模型定义之后,使用以下命令,将模型转换成数据库表:
$ python manage.py makemigrations
$ python manage.py migrate
6.创建视图
在“users/views.py”文件中,定义一个名为StudentListView的视图,继承自Django自带的ListView视图,如下所示:
from django.shortcuts import render
from django.views.generic.list import ListView
from .models import Student
class StudentListView(ListView):
model = Student
template_name = 'students.html'
context_object_name = 'students'
7.创建URL
在“users/urls.py”文件中,定义一个名为“students”的URL,将其指向视图“StudentListView”,如下所示:
from django.urls import path
from .views import StudentListView
urlpatterns = [
path('students/', StudentListView.as_view(), name='students'),
]
示例一:查看学员列表
现在我们可以使用以下命令来启动Django的开发服务器:
$ python manage.py runserver
在浏览器中访问“http://localhost:8000/users/students/”,即可查看学员列表。注意需要在模板中使用相关Django标签调用学员数据。
示例二:添加学员信息
在“users/views.py”文件中,定义一个名为“StudentCreateView”的视图,继承自Django自带的CreateView视图,实现添加学员信息。
from django.shortcuts import render
from django.views.generic.edit import CreateView
from .models import Student
class StudentCreateView(CreateView):
model = Student
fields = '__all__'
template_name = 'create_student.html'
在“users/templates/create_student.html”文件中,定义一个名为“create_student”的模板,实现添加学员信息的页面。
{% extends 'base.html' %}
{% block content %}
<h1>添加学员信息</h1>
<form method="post">
{% csrf_token %}
{{ form.as_p }}
<button type="submit">保存</button>
</form>
{% endblock %}
在“users/urls.py”文件中,定义一个名为“create_student”的URL,将其指向视图“StudentCreateView”,如下所示:
from django.urls import path
from .views import StudentListView, StudentCreateView
urlpatterns = [
path('students/', StudentListView.as_view(), name='students'),
path('create/', StudentCreateView.as_view(), name='create_student'),
]
现在我们可以在浏览器中访问“http://localhost:8000/users/create/”,来添加学员信息。注意需要在模板中使用相关Django标签渲染表单。
至此,我们就完成了“python3.6+django2.0开发一套学员管理系统”的完整攻略。
本站文章如无特殊说明,均为本站原创,如若转载,请注明出处:python3.6+django2.0开发一套学员管理系统 - Python技术站