您的位置:首页 > 编程语言 > Python开发

Python Django 学习笔记(一)-------Django基本操作及后端get解析

2018-01-02 17:43 851 查看

1.需求

发布会签到系统,嘉宾(Guest)管理和发布会(Event)管理,增加发布会搜索和嘉宾搜索功能

1.1前端实现嘉宾搜索接口(guest_manage.html):

<!--嘉宾管理搜索表单-->
<!--根据name属性中初始值“name”来获取输入查询参数-->
<div class="page-header" style="padding-top:60px;">
<div id="navbar" class="navbar-collapse collapse">
<form class="navbar-form" method="get" action="/guest_search_name/">
<div class="form-group">
<input name="name" type="text" placeholder="名称" class="form-control">
</div>
<button type="submit" class="btn btn-success">搜索</button>
</form>
</div>
</div>


1.2后端接收前段输入并处理(views.py):

# 嘉宾名称搜索
@login_required
def guest_search_name(request):
username = request.session.get('user', '')
print(username)

# ***********************************************************
# < !--根据name属性中初始值“name”来获取输入查询参数,此处name为前端参数name对应的初始name值,根据初始值去获取对应输入name值
# 这样做的好处:当存在多个name输入时,可以根据各个input name的初始值去获取对应的输入值 -->
search_name = request.GET.get('name','')

print(search_name)
guest_list = Guest.objects.filter(realname__contains=search_name)
print (guest_list)
return render(request,"guest_manage.html",{"user":username,
"guests":guest_list})


1.3特殊说明

后端解析输入name并进行filter,search_name = request.GET.get(‘name’,”),其中get属性中对应name为前端html中input name中name的初始值。如:name=”first_name”,则后端get时为:get(“first_name”);

判断依据为:

根据name初始值和name属性获取对应input name值。

常见问题已解决方法:

Django应用创建

1.安装django:pip install django

2.创建guest项目:django-admin startproject guest

3.创建sign应用:python manage.py startapp sign(sign中包含Guest和Event,嘉宾和发布会对象)

开启Django服务

1.cd C:/python36/Script/Guest

2.python migrate.py runserver

登陆mysql报Can’t connect to MySQL server (10060)问题

1.先看看mysql服务是否开启,端口是否占用

2.关闭windows防火墙,登陆mysql后再打开

前端bootstrap3框架安装

1.pip install django-bootstrap3

2.在setting.py文件中,添加bootstrap应用,与添加guest应用方法一致

Django文件解释

views.py:后台调用templates文件中前端html文件实现调用功能,用于控制前端页面显示的内容

models.py:django模型文件,创建应用程序数据表模型(数据库表创建)

admin.py:django自带默认admin后台

url.py:url路径注册,使用正则表达式匹配

templates:内部为前端html页面

内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  django python