基于Django URL传参 FORM表单传数据 get post的用法实例
POST和GET是web开发中常用的表单交互方法,是构建web前后端交互系统的顶梁柱,现将Django中的简单用法示例记录下来,以供后续查询和其他同学参考
1.URL传参
#前端html的链接中用模版标签把参数"x"传递给achievement这个应用的yearcontent方法 <td><a href={% url 'achievement:yearcontent' x %} >{{ x }}</a></td> #urls.py中用正则匹配接收参数,(?P<year>[0-9]+)用括号括起来接收前端传过来的x=2017,好传给视图函数views.py使用,?P用于设置匹配部分的名字,views.py里面要用这个名字来接收参数的,[0-9]+表示正则匹配所有整数 url(r'^yearcontent/(?P<year>[0-9]+)/$', views.yearcontent, name='yearcontent'), #views.py里面接收传过来的year=2017,后续方法体中再用传过来的参数搞事情,这就是用URL传参也就是GET方法的一种使用 def yearcontent(request,year):
2.FORM表单 用POST
#前端html中设置好name,因为后续要通过name获得数据 <form class="form-horizontal" role="form" action="{% url 'achievement:set_new_purpose' %}" method="post"> {% csrf_token %} <div class="form-group"> <label class="col-lg-2 control-label">目标</label> <div class="col-lg-10"> <input type="text" class="form-control" id="cc" placeholder="" name="achievement_title"> </div> </div> <div class="form-group"> <label class="col-lg-2 control-label">备注</label> <div class="col-lg-10"> <textarea id="" class="form-control" cols="30" rows="10" name="achievement_text"></textarea> </div> </div> <div class="form-group"> <div class="col-lg-offset-10"> <button type="submit" class="btn btn-send" type="submit">确定</button> </div> </div> </form> #urls中 url(r'^set_year_summary$', views.set_year_summary, name='set_year_summary'), #视图函数views.py中, request.POST[name]来接收form表单的数据,然后就可以搞事情了 def set_year_summary(request): achievement_date = request.POST['year'] achievement_summary = request.POST['achievement_text'] twz = AchievementYear.objects.get(achievement_date=achievement_date) print twz twz.achievement_summary = achievement_summary twz.save() return redirect('achievement:index')
相关推荐
wcqwcq 2020-07-04
knightwatch 2020-07-19
Guanjs0 2020-11-09
wmsjlihuan 2020-09-15
shishengsoft 2020-09-15
poplpsure 2020-08-17
CyborgLin 2020-08-15
Richardxx 2020-07-26
sunnyhappy0 2020-07-26
chichichi0 2020-06-16
YAruli 2020-06-13
JF0 2020-06-13
84423067 2020-06-12
心丨悦 2020-06-11
zkwgpp 2020-06-04
stoneechogx 2020-06-04
litterfrog 2020-05-30
today0 2020-05-26