Python全系列 教程
3567个小节阅读:5929.7k
鸿蒙应用开发
C语言快速入门
JAVA全系列 教程
面向对象的程序设计语言
Python全系列 教程
Python3.x版本,未来主流的版本
人工智能 教程
顺势而为,AI创新未来
大厂算法 教程
算法,程序员自我提升必经之路
C++ 教程
一门通用计算机编程语言
微服务 教程
目前业界流行的框架组合
web前端全系列 教程
通向WEB技术世界的钥匙
大数据全系列 教程
站在云端操控万千数据
AIGC全能工具班
A A
White Night
修改orderapp模块中的views.py
xxxxxxxxxx
from django.http import HttpResponse
from django.shortcuts import render
import jsonpickle
# Create your views here.
from userapp.models import *
from goodsapp.models import *
from cartapp.models import *
from cartapp.cartmanager import *
def toOrderView(request):
#获取请求参数
cartitems = request.GET.get('cartitems','')
totalPrice = request.GET.get('totalPrice','')
#判断用户是否登录
if not request.session.get('user',''):
#跳转到登录页面
return render(request,'userapp/login.html',{'reflag':'order','cartitems':cartitems,'totalPrice':totalPrice})
#反序列化cartitems
cartitemList = jsonpickle.loads(cartitems)
#获取收获地址
user = jsonpickle.loads(request.session.get('user'))
addrObj = user.address_set.get(isdefault=True)
#根据cartitemList获取订单项
cartItemObjList = [DBCartManger(user).get_cartitems(**item) for item in cartitemList if item]
#传递参数
#根据cartitemList获取订单项
context = {'totalPrice':totalPrice,'cartItemObjList':cartItemObjList,'addrObj':addrObj}
return render(request,'orderapp/order.html',context=context)
修改order.html
xxxxxxxxxx
{% extends 'base.html'%}
{% load static %}
{% block headerjs %}
<link rel="stylesheet" type="text/css" href="{% static 'public.css' %}">
<link rel="stylesheet" type="text/css" href="{% static 'proList.css' %}">
{% endblock %}
{% block main %}
<div class="order cart mt">
<!-----------------site------------------->
<div class="site">
<p class="wrapper clearfix">
<span class="fl">订单确认</span>
</p>
</div>
<!-----------------orderCon------------------->
<div class="orderCon wrapper clearfix">
<div class="orderL fl">
<!--------h3---------------->
<h3>收件信息</h3>
<!--------addres---------------->
<div class="addres clearfix">
<div class="addre fl on">
<div class="tit clearfix">
<p class="fl"><span id="name_address">{{addrObj.aname}}</span>
<span class="default">[默认地址]</span>
</p>
</div>
<div class="addCon">
<p id="address_address">{{addrObj.addr}}</p>
<p id="phone_address">{{addrObj.aphone}}</p>
</div>
</div>
</div>
<h3>支付方式</h3>
<!--------way---------------->
<div class="way clearfix">
<img class="on" src="{% static 'way01.jpg' %}" name="alipay">
<img src="{% static 'way02.jpg' %}" name="wechat">
<img src="{% static 'way03.jpg' %}" name="union">
</div>
<!--------dis---------------->
</div>
<div class="orderR fr">
<div class="msg">
<h3>订单内容</h3>
<!--------ul---------------->
{% for cartitem in cartItemObjList%}
<ul class="clearfix" goodsid="{{cartitem.goodsid}}" sizeid="{{cartitem.sizeid}}" colorid="{{cartitem.colorid}}" count="{{cartitem.count}}">
<li class="fl">
<img src="{{cartitem.getColor.colorurl}}" width="87px" height="87px">
</li>
<li class="fl">
<p>{{cartitem.getGoods.gname}}</p>
<p>{{cartitem.getColor.colorname}}</p>
<p>数量:{{cartitem.count}}</p>
</li>
<li class="fr">¥{{cartitem.getTotalPrice}}</li>
</ul>
{% endfor %}
</div>
<!--------tips---------------->
<div class="tips">
<p><span class="fl">商品金额:</span><span class="fr">¥{{totalPrice}}</span></p>
<p><span class="fl">优惠金额:</span><span class="fr">¥0.00</span></p>
<p><span class="fl">运费:</span><span class="fr">免运费</span></p>
</div>
<!--------tips count---------------->
<div class="count tips">
<p><span class="fl">合计:</span><span class="fr">¥{{totalPrice}}</span></p>
</div>
<!--<input type="button" name="" value="去支付"> -->
<a href="http://127.0.0.1:8000/order/order.html" id="pay" class="pay" onclick="javascript:void(0);">去支付</a>
</div>
</div>
</div>
{% endblock %}
{% block footerjs %}
<script src="{% static 'public.js' %}" type="text/javascript" charset="utf-8"></script>
<script src="{% static 'pro.js' %}" type="text/javascript" charset="utf-8"></script>
<script src="{% static 'user.js' %}" type="text/javascript" charset="utf-8"></script>
<script>
$("#pay").click(function(){
var cartitems = []
$.each($('.msg ul'),function(index,item){
cartitems.push({"goodsid":$(item).attr('goodsid'),
"sizeid":$(item).attr('sizeid'),
"colorid":$(item).attr('colorid'),
"count":$(item).attr('count')
})
})
//拼接请求参数
var params = 'address=1&payway='+$('.way .on').attr('name')+'&cartitems='+JSON.stringify(cartitems)
//拼接请求地址
var url = '/order/toorder/?'+params
$(this).attr('href',url)
})
</script>
{% endblock %}