加载中…
个人资料
  • 博客等级:
  • 博客积分:
  • 博客访问:
  • 关注人气:
  • 获赠金笔:0支
  • 赠出金笔:0支
  • 荣誉徽章:
正文 字体大小:

django+mysql创建用户管理系统

(2019-03-23 00:02:01)
标签:

it

分类: Python与机器学习
1、创建django项目
(1)用pycharm创建

(2)项目根目录下的应用创建
      在项目根目录下cmd中输入:python manage.py startapp 应用名
      添加应用名到settings.py中的installed_apps中
     应用中各部分介绍:
      views.py  大部分的访问请求都要通过该模块响应,所以我们的大部分代码都集中在这里。
 (3)各文件介绍
      “项目名/项目名/”下有:
        _init_.py     -->记得加入处理mysql连接的语句
         index.py(我自己建的)
         settings.py  :在installed_apps部分要加入自己创建的应用名,database部分设置好与mysql的连接,static部分加上staticfiles_dirs
         urls.py  :在urlpatterns部分设置好要访问的url和views中函数的对应关系
         wsgi.py:一般不要动

      新建一个应用,下面会有:
      migrations文件夹:暂时不要动;‘
      _init_.py:暂时不要动
      admin.py: 
      apps.py:
      forms.py: 我自己加的
      models.py: 如果需要创建数据表就要在这里面写,然后用python manage.py makemigrations和python manage.py migrate在mysql数据库中生成真实的表。
      tests.py:
     urls.py:我自己加的
      views.py: 可获取models中定义的表的数据,import models,...
 

2、安装mysql server

3、创建数据库和用户
    mysql>create database 数据库名;
    mysql>create user 用户名@localhost identified by '123456';
    mysql>grant all privileges on 数据库.* to 用户名@localhost;

4、设置数据库连接
如遇到如下问题
django.core.exceptions.ImproperlyConfigured: Error loading MySQLdb module.
Did you install mysqlclient?
解决方案:
(1) 安装pymsql
pip install pymysql
(2) 安装完毕,打开项目的_init_.py,添加代码:
 import pymysql 
 pymysql.install_as_MySQLdb()


5、创建数据表(数据迁移)
       (1)选择某个应用
       (2)在其models.py中定义表结构,
       (3)在其admin.py中注册表
(4)数据迁移:python manage.py makemigrations  应用名
                          python manage.py migrate
如出现RuntimeError: cryptography is required for sha256_password or ....
执行如下操作:
1). ALTER USER 'root'@'localhost' IDENTIFIED BY 'password' PASSWORD EXPIRE NEVER; #修改加密规则 
2).ALTER USER 'root'@'localhost' IDENTIFIED WITH mysql_native_password BY 'password'; #更新一下用户的密码
3).FLUSH PRIVILEGES; #刷新权限
4).再重置下密码:alter user 'root'@'localhost' identified by '123456';


6、安装captcha
pip install django-simple-captcha

settings.py配置,加入captcha

INSTALLED_APPS = [

'captcha',

]

urls.py配置

加入url
from django.urls import path,include
path('captcha', include('captcha.urls')),




7、从mysql数据库中查询数据展示在网页

实现逻辑:

用户访问html页面,urls.py负责找到相应的views中的函数,views中的函数负责提供数据用于展示在页面。

(1)在views.py中

import models


8、前后台交互

views中的函数,get:第一次转到该页面;post:提交该页面。



0

阅读 收藏 喜欢 打印举报/Report
  

新浪BLOG意见反馈留言板 欢迎批评指正

新浪简介 | About Sina | 广告服务 | 联系我们 | 招聘信息 | 网站律师 | SINA English | 产品答疑

新浪公司 版权所有