訂單生成回撥介面
阿新 • • 發佈:2020-10-16
- 支付回撥頁支付資訊
- vue需要把支付憑證傳遞給django,django把訂單狀態改為已支付,並在UserCourse表中儲存使用者購買課程資訊
mounted() {
this.query = this.$route.query
payment_post(this.query).then((resp) => {
// ({"code": 999, "msg": "非法請求"})
this.msg = resp.msg
})
},
2.goods/views
中寫檢視函式
class PaymentApi(APIView): def post(self, request): data = request.data # 獲取訂單物件 order_obj = Orders.objects.get(order_id=data.get('out_trade_no')) # 需要儲存支付寶訂單資訊,支付時間,支付狀態 order_obj.trade_no = data.get('trade_no') order_obj.pay_time = data.get('timestamp') order_obj.status = 2 order_obj.save() # 獲取使用者購買的課程物件和當前使用者 course_obj = Course.objects.get(pk=order_obj.goods.course_id) user = UserCourse(user=request.user, course=course_obj) user.save() return Response({"code": 200, "msg": "OK"})
3.goods/urls
中註冊路由
urlpatterns = [
path('payment/', views.PaymentApi.as_view()) # /goods/payment/
]