网站搭建环境,wordpress获取某分类下最新文章,wordpress单页下载,教师做课题可以参考什么网站1,django项目的各个文件的介绍 1.1项目的根目录:是各个子文件的根目录,在各个文件相互导入文件的时候使用 1.2配置文件:为django的各个文件配置相关的各种默认配置 1.3路径和函数的对应关系:是当form表单提交数据的时候和有关于网址的东西都会来urls来查找向对应的… 1,django项目的各个文件的介绍 1.1项目的根目录:是各个子文件的根目录,在各个文件相互导入文件的时候使用 1.2配置文件:为django的各个文件配置相关的各种默认配置 1.3路径和函数的对应关系:是当form表单提交数据的时候和有关于网址的东西都会来urls来查找向对应的东西 1.4 项目的静态文件:用于存放于静态的比如:css,js,bootstrap,jQuery,img文件等 1.5templates:存放HTML文件的地方 1.6manager:是命令行入口文件 1.7db.aqlite3:django开发环境默认的文件数据库 2,浏览器和django服务器请求,响应的过程 第一步先向服务器get login的页面这次是请求,(methodget) 第二步,当访问服务器的时候,服务器获取到login/(通过request)去urls去寻找login函数 在第三步,django会帮助login自动执行login函数,并传一个request的参数,这个request是django封装了所有和浏览器请求有关的所有的键值对 第四步执行login函数的以后,要返回login的html文件,在这里render是返回文件的专属 在第四步return返回给调用者,(其实是返回给了request)此时,request里有html文件的路径,然后浏览器去渲染这个html文件 3,form表单提交数据的三要素: 3.1form标签必须标签必须要有action和method属性(action是向那提交数据,method是以什么样的方式提交数据(post,get)) 3.2所有获取用户输入的标签必须放在form表单中,必须要有name属性(name值的键值对 ) 3.3必须要有submit按钮(提交) 4,django基础必会三件套 from django.shortcuts import HttpResponse,render,redirect 4.1HttpResponse:返回一个指定的字符串 4.2render:返回一个html文件 4.3redirect:跳转 5,request相关的属性 5.1request.method ---返回的是请求的方法(全大写):GET/POST... 5.2request.GET ---取得的是URL里面的参数,类似于字典的节后数据 5.3request.POST ---post提交的数据,类似于字典的数据结构 6,Django的模板数据语言:{{变量名}} 7,程序连接pymysql 7.1导入偏移MySQL模块 7.2创建连接 7.3获取执行命令的油表 7.4用油表去执行sql语句 7.5获取sql语句查询的结果 7.6关闭油表 7.7关闭连接 7.8在django中有一种工具帮助翻译sql语句 --ORM(Object Relationship Model) 优点:1开发效率高 2开发并不用直接写sql语句 缺点:执行效率低 从面向对象的角度去看数据库中的表,一张表就是一个类,表中的每一个字段就是一个类中的属性,每一行就是类实例化的一个对象 8,django项目中的APP ---项目中又分了一级python包,不同的功能房到不同的包里面 8.1创建app--python manage.py startapp app01 8.2告诉Django创建一个APP 在setting.py找到那个INSTALLED_APPS中添加创建的app 9,Django中ORM的使用 9.1操作数据表 9.2操作数据行 10,使用 10.1手动创建一个数据库:----create database 数据库名 10.2告诉Django连那个数据库 DATABASES { default:{ ENGINE:django.db.backends.mysql#连接数据库的类型 NAME:数据库名,#数据库名 HOST:127.0.0.1,#数据主机的地址 PORT:3306,#数据库的端口 USER:root,#数据的使用者是管理员 PASSEORD: } } 10.3连接数据库的方式 利用第三方的包,eg:pymysql和MYSQLdb,告诉django用pymysql模块代替默认的MYSQLdb去连接MYSQL数据库和setting.py同级的__init__.py文件,写上: import pymysql pymysql.install_as_MYSQLdb() 10.4在app/models.py的文件中创建类 类必须继承models.Model 10.5两个命令 10.5.1python manage.py makemigrations ---找个本本把models.py的变更记录一下 10.5.2python manage.py migrate --把上面变更的记录翻译成SQL语句,去数据库中执行 11,ORM查询 类名(表名).object,filter(email,pwd)表的字段 11,登录函数的代码 # views业务逻辑代码
from app01.models import UserInfo # 把数据库导入进来
def login(request):# 定义一个全局变量当第一次进来获取页面的时候,不显示html变量的信息error_msg if request.method POST: # 1, 第二次进来的时候是POST请求要获取用户输入的用户名和密码 new_email request.POST.get(email) new_pwd request.POST.get(pwd) # 2, 从数据库中读取数据并校验用户输入的是否合法 ret_obj UserInfo.objects.filter(email new_email, pwd new_pwd) # 判断匹配是否成功 if ret_obj: # 此时如果匹配成功,得到的是匹配的对象 # 如果匹配成功,就说明存在该用户,让用户执行可执行得到操作页面 return redirect(/index/) # 跳转到index这个页面,同网站跳转用绝对路径 # 假如没有匹配成功就要给用于提示页面 error_msg 邮箱或者密码不正确 # 3, 如果是第一次进来,用户需要获得一个登录页面,这时是一个get请求 return render(request, login.html, {error_msg:error_msg}) def index(reuest): return render(request, index.html, {error_msg:error_msg}) 转载于:https://www.cnblogs.com/ljc-0923/p/9801817.html