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-基础-入门 简介
Aug 09 Python
Python深入学习之闭包
Aug 31 Python
详解Python程序与服务器连接的WSGI接口
Apr 29 Python
使用Python生成随机密码的示例分享
Feb 18 Python
浅谈Python中函数的参数传递
Jun 21 Python
Python与Java间Socket通信实例代码
Mar 06 Python
详解python之多进程和进程池(Processing库)
Jun 09 Python
对pandas数据判断是否为NaN值的方法详解
Nov 06 Python
Python中shapefile转换geojson的示例
Jan 03 Python
Python3.5 Pandas模块之Series用法实例分析
Apr 23 Python
Django 实现 Websocket 广播、点对点发送消息的代码
Jun 03 Python
python super()函数的基本使用
Sep 10 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
实现树状结构的两种方法
2006/10/09 PHP
下载文件的点击数回填
2006/10/09 PHP
wiki-shan写的php在线加密的解密程序
2008/09/07 PHP
mysql 性能的检查和优化方法
2009/06/21 PHP
php源码加密 仿微盾PHP加密专家(PHPCodeLock)
2010/05/06 PHP
初品cakephp 入门基础
2012/02/16 PHP
php实现文本数据导入SQL SERVER
2015/05/17 PHP
php返回当前日期或者指定日期是周几
2015/05/21 PHP
PHP限制HTML内容中图片必须是本站的方法
2015/06/16 PHP
php实现异步数据调用的方法
2015/12/24 PHP
php 读写json文件及修改json的方法
2018/03/07 PHP
javascript生成/解析dom的CDATA类型的字段的代码
2007/04/22 Javascript
Js nodeType 属性全面解析
2013/11/14 Javascript
上传文件返回的json数据会被提示下载问题解决方案
2014/12/03 Javascript
详解jQuery停止动画——stop()方法的使用
2016/12/14 Javascript
微信小程序单选radio及多选checkbox按钮用法示例
2019/04/30 Javascript
使用pkg打包ThinkJS项目的方法步骤
2019/12/30 Javascript
JS自定义对象创建与简单使用方法示例
2020/01/15 Javascript
vue中用 async/await 来处理异步操作
2020/07/18 Javascript
python快速排序代码实例
2013/11/21 Python
Python3中多线程编程的队列运作示例
2015/04/16 Python
Python中单线程、多线程和多进程的效率对比实验实例
2019/05/14 Python
python 含子图的gif生成时内存溢出的方法
2019/07/07 Python
Python实现二叉树的最小深度的两种方法
2019/09/30 Python
Python 3.8正式发布,来尝鲜这些新特性吧
2019/10/15 Python
Python高级特性——详解多维数组切片(Slice)
2019/11/26 Python
用python批量下载apk
2020/12/29 Python
实例讲解CSS3中的border-radius属性
2015/08/18 HTML / CSS
萨克斯第五大道英国:Saks Fifth Avenue英国
2019/04/01 全球购物
Lookfantastic澳大利亚官网:英国知名美妆购物网站
2021/01/07 全球购物
《可爱的动物》教学反思
2014/02/22 职场文书
解除聘用合同证明书范本
2014/09/11 职场文书
租房协议书范例
2014/10/14 职场文书
委托书的样本
2015/01/28 职场文书
小学生暑假安全公约
2015/07/14 职场文书
MySQL如何使用使用Xtrabackup进行备份和恢复
2021/06/21 MySQL