python3+django2开发一个简单的人员管理系统过程详解


Posted in Python onJuly 23, 2019

一、基础环境准备

windows环境:

  • Pycharm
  • python3.6
  • Django2.0.1
  • Mysql5.7

安装django 在pycharm terminal 控制台执行:

python3 -m pip install django #因为本地安装了python2.7 和python3.6 2个版本,所以python3.6环境变量对应python3

二、创建工程和应用

django-admin.py startproject qiakrcmdb #工程名称
cd qiakrcmdb
django-admin.py startapp userinfo #应用名称

三、应用配置

3.1、修改工程配置文件(qiakrcmdb/settings.py)

#添加我们创建的应用userinfo

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

注释 csrf 校验

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',
]

修改连库配置默认 sqlite3 改mysql

DATABASES = {
  'default': {
    'ENGINE': 'django.db.backends.mysql', 
    'NAME': 'userinfo',           
    'USER': 'root',
    'PASSWORD': '123456',
    'HOST': '127.0.0.1',           
    'PORT': '3306',         
  }
}
LANGUAGE_CODE = 'zh-Hans'

TIME_ZONE = 'Asia/Shanghai'

允许所有IP访问

ALLOWED_HOSTS = ['*']

3.2、定义用户信息的数据模型(也就是字段名和数据类型)userinfo/models.py

from django.db import models

class User(models.Model):
  GENDER_CHOICES=(
    ('男','男'),
    ('女','女'),
    )
  name=models.CharField(max_length=30,unique=True,verbose_name='姓 名')
  birthday=models.DateField(blank=True,null=True,verbose_name='生 日')
  gender=models.CharField(max_length=30,choices=GENDER_CHOICES,verbose_name='性 别')
  account=models.IntegerField(default=0,verbose_name='工 号')
  age=models.IntegerField(default=18,verbose_name='年 龄')

3.3、初始化模型数据库并生成数据库文件

简言之:在Django 1.9及未来的版本种使用migrate代替原先的syscdb.

python3 ./manage.py migrate

3.4、显示注册信息修改默认标题(hostinfo/admin.py)

from django.contrib import admin
from userinfo.models import User

class HostAdmin(admin.ModelAdmin):
  list_display = [
        'name',
        'age',
        'birthday',
        'gender',
        'account',
         ]
  search_fields = ('name',)
   
admin.site.register(User,HostAdmin)
admin.AdminSite.site_header ='运维系统管理后台'
admin.AdminSite.site_title = '运维系统'

3.6 添加应用的url访问(qiakrcmdb/urls.py)

from django.contrib import admin
from django.urls import path

urlpatterns = [
  path('admin/', admin.site.urls),
  ]

3.7 创建用户表

USER userinfo;
CREATE TABLE `userinfo_user` (
 `id` int(19) NOT NULL AUTO_INCREMENT,
 `name` varchar(50) NOT NULL,
 `birthday` varchar(100) NOT NULL,
 `gender` varchar(50) NOT NULL,
 `account` varchar(50) NOT NULL,
 `age` int(19) NOT NULL,
 PRIMARY KEY (`id`)
) ENGINE=InnoDB AUTO_INCREMENT=1 DEFAULT CHARSET=utf8mb4;

django 连数据库 提示找不到MySQLdb模块解决

python3 -m pip install pymysql

找到qiakrcmdb/userinfo/__init__.py,在里面输入以下内容并保存:

import pymysql pymysql.install_as_MySQLdb()

四、启动Django服务

python3 manage.py runserver 0.0.0.0:81

http://127.0.0.1:81/admin/

python3+django2开发一个简单的人员管理系统过程详解

创建管理员帐号

python3 manage.py createsuperuser #根据提示输入帐号和密码

登录成功后即可添加对应的信息到系统中;

python3+django2开发一个简单的人员管理系统过程详解

python3+django2开发一个简单的人员管理系统过程详解

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持三水点靠木。

Python 相关文章推荐
让 python 命令行也可以自动补全
Nov 30 Python
python实现颜色rgb和hex相互转换的函数
Mar 19 Python
在Linux中通过Python脚本访问mdb数据库的方法
May 06 Python
Python基于Socket实现的简单聊天程序示例
Aug 05 Python
Python装饰器原理与用法分析
Apr 30 Python
python中的turtle库函数简单使用教程
Jul 23 Python
Python requests模块实例用法
Feb 11 Python
pytorch 使用单个GPU与多个GPU进行训练与测试的方法
Aug 19 Python
Python实现计算长方形面积(带参数函数demo)
Jan 18 Python
详解python命令提示符窗口下如何运行python脚本
Sep 11 Python
Django中session进行权限管理的使用
Jul 09 Python
如何利用Python实现n*n螺旋矩阵
Jan 18 Python
Django框架之DRF 基于mixins来封装的视图详解
Jul 23 #Python
flask框架路由常用定义方式总结
Jul 23 #Python
python处理大日志文件
Jul 23 #Python
Django urls.py重构及参数传递详解
Jul 23 #Python
Django框架基础模板标签与filter使用方法详解
Jul 23 #Python
Python之虚拟环境virtualenv,pipreqs生成项目依赖第三方包的方法
Jul 23 #Python
Python中拆分字符串的操作方法
Jul 23 #Python
You might like
PHP+APACHE实现用户论证的方法
2006/10/09 PHP
如何使用PHP获取指定日期所在月的开始日期与结束日期
2013/08/01 PHP
PHP 5.3新增魔术方法__invoke概述
2014/07/23 PHP
浅谈PHP正则表达式中修饰符/i, /is, /s, /isU
2014/10/21 PHP
PHP实现过滤掉非汉字字符只保留中文字符
2015/06/04 PHP
php进行ip地址掩码运算处理的方法
2016/07/11 PHP
Yii视图CGridView列表用法实例分析
2016/07/12 PHP
浅谈PHP发送HTTP请求的几种方式
2017/07/25 PHP
如何取得中文输入的真实长度?
2006/06/24 Javascript
JS模拟的QQ面板上的多级可展开的菜单
2009/10/10 Javascript
ExtJs默认的字体大小改变的几种方法(自己整理)
2013/04/18 Javascript
javascript ajax 仿百度分页函数
2013/10/29 Javascript
深入理解Javascript里的依赖注入
2014/03/19 Javascript
node.js 开发指南 ? Node.js 连接 MySQL 并进行数据库操作
2014/07/29 Javascript
JQuery遍历json数组的3种方法
2014/11/08 Javascript
Node.js Addons翻译(C/C++扩展)
2016/06/12 Javascript
原生js更改css样式的两种方式
2017/03/15 Javascript
基于AngularJS实现的工资计算器实例
2017/06/16 Javascript
详解webpack loader和plugin编写
2018/10/12 Javascript
jQuery实现表格的增、删、改操作示例
2019/01/27 jQuery
js get和post请求实现代码解析
2020/02/06 Javascript
jquery简易手风琴插件的封装
2020/10/13 jQuery
用Pygal绘制直方图代码示例
2017/12/07 Python
Python Grid使用和布局详解
2018/06/30 Python
python替换字符串中的子串图文步骤
2019/06/19 Python
python中p-value的实现方式
2019/12/16 Python
完美解决pyinstaller打包报错找不到依赖pypiwin32或pywin32-ctypes的错误
2020/04/01 Python
学python需要去培训机构吗
2020/07/01 Python
Python命名空间及作用域原理实例解析
2020/08/12 Python
python绘制趋势图的示例
2020/09/17 Python
Pyecharts 中Geo函数常用参数的用法说明
2021/02/01 Python
CSS3中动画属性transform、transition和animation属性的区别
2016/09/25 HTML / CSS
一款基于css3的列表toggle特效实例教程
2015/01/04 HTML / CSS
校园会短篇的广播稿
2014/10/21 职场文书
2014年卫生保健工作总结
2014/12/08 职场文书
Python 中数组和数字相乘时的注意事项说明
2021/05/10 Python