赞
踩
python Django实现的一个简易的教务选课系统。
介绍与演示的视频版本已发到我的b站: https://www.bilibili.com/video/BV1er4y1w7ty。
项目已上传到我的github: https://github.com/BigShuang/SimpleStudentCourseManagementSystem。
〇、初步介绍与演示
一、项目流程梳理与数据库设计
二、新建项目(project)、设置、运行
三、创建用户模型(model)
四、实现登录页面
五、实现注册功能
======================= 大爽歌作,made by big shuang =======================
关于新建项目,我之前的博客有详细写过:
Django自学笔记 1-1 新建项目
所以这里简单展示新建过程和结果。
django-admin startproject SSCMS
运行后项目文件夹结构如下
SSCMS
|--manage.py
|--SSCMS
|--settings.py
|--urls.py
|--wsgi.py
|--__init__.py
关于新建项目,我之前的博客有详细写过:
Django自学笔记 1-1 新建项目
所以这里简单展示新建过程和结果。
django-admin startproject SSCMS
运行后项目文件夹结构如下
SSCMS
|--manage.py
|--SSCMS
|--settings.py
|--urls.py
|--wsgi.py
|--__init__.py

理论上在1中会自动生成设置好了的设置文件:./SSCMS/settings.py
但是由于版本不同或者一些其他的原因,可能会存在设置文件不对(没设置完)的情况。
此时需要手动校对下./SSCMS/settings.py, 主要是检查设置下这几个
INSTALLED_APPS = [
'django.contrib.admin',
'django.contrib.auth',
'django.contrib.contenttypes',
'django.contrib.sessions',
'django.contrib.messages',
'django.contrib.staticfiles',
]
MIDDLEWARE = [
'django.middleware.security.SecurityMiddleware',
'django.contrib.sessions.middleware.SessionMiddleware',
'django.middleware.common.CommonMiddleware',
'django.middleware.csrf.CsrfViewMiddleware',
'django.contrib.auth.middleware.AuthenticationMiddleware',
'django.contrib.messages.middleware.MessageMiddleware',
'django.middleware.clickjacking.XFrameOptionsMiddleware',
]
TEMPLATES = [ { 'BACKEND': 'django.template.backends.django.DjangoTemplates', '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', ], }, }, ]
DATABASES = {
'default': {
'ENGINE': 'django.db.backends.sqlite3',
'NAME': os.path.join(BASE_DIR, 'db.sqlite3'),
}
}
同时后续我们也需要添加一些我们自己的设置,这个后面遇到再说
对于新手而言,往往会困惑应用(app)是什么?
这里粗略的解释下,对于一个项目(project)而言,应用(app)可以理解为模块、子系统,用于承载一个项目中相对独立的一块功能。
就像一个房子一般要由多个房间(门厅,餐厅,客厅,卧室,厨房,卫生间等)组成,一个项目往往由多个应用组成。
比如本项目中,将教务管理系统分为用户、课程模块。
对于小的项目来说,只有一个应用也是可以的,但是对于大一点的项目,推荐将功能先划分为不同的模块,否则就像一个房子只用一个房间承载餐厅客厅卧室厨房卫生间的功能。。。
通过命令行新建应用(app)
py manage.py startapp user
如果系统中同时安装有python2和python3,则需要指定python版本为3
此时命令如下
py3 manage.py startapp user
新建应用(app)后,要去 setting.py中的INSTALLED_APPS添加应用user
INSTALLED_APPS添加后如下
INSTALLED_APPS = [
'django.contrib.admin',
'django.contrib.auth',
'django.contrib.contenttypes',
'django.contrib.sessions',
'django.contrib.messages',
'django.contrib.staticfiles',
'user',
]
建好应用(app)后项目文件夹如下
SSCMS |--manage.py |--SSCMS | |--settings.py | |--urls.py | |--wsgi.py | |--__init__.py |--templates |--user |--admin.py |--apps.py |--migrations | |--__init__.py |--models.py |--tests.py |--views.py |--__init__.py
在本文第一部分,简单介绍过了用于存放模板的templates文件夹。
除了这个,我们还需要建立用于存放静态文件的static文件夹,
直接用电脑在项目文件夹下右键新建文件夹并命名为static即可
然后项目文件夹如下
SSCMS |--manage.py |--SSCMS | |--settings.py | |--urls.py | |--wsgi.py | |--__init__.py |--static |--templates |--user |--admin.py |--apps.py |--migrations | |--__init__.py |--models.py |--tests.py |--views.py |--__init__.py
Pycharm专业版会自动为Django项目添加一个可以运行的服务器配置
直接点击这里就可以运行了

对于什么都没有的新项目,运行后访问
http://127.0.0.1:8000/
将如下图

运行后,点击这个红色的方块,即可关闭服务器。

py manage.py runserver
在命令行中,按Ctrl+C可关闭服务器
如果你是Pycharm社区版(免费版),可能Pycharm不会自动添加一个可以运行的服务器配置。
那么你需要手动添加一个服务器配置
在pycharm右上角这里点击下拉后出现的Edit Configurations

在弹出的窗口中按照以下步骤操作

其中,
3中的name可以自己定义,
4中的文件要设置成自己项目下的manage.py文件
操作完成后点击窗体右下角的Apply按钮就好。
就可以像本部分A(第五部分通过Pycharm来运行)中那样运行这个项目了
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。