一. get和delete方法的查询字符串参数在请求首行中, 所以要用路由参数或者用 params:{} 进行传参
(1) 用路由参数进行传参
# 前端发送ajax
this.$axios.delete(`${this.$settings.Host}/article/del_collection/${collection_id}`,{
headers:{..}
})
# 后端路由
re_path("^del_collection/(?P<pk>\d+)/$",...),
# 视图方法里直接传参pk获取 collection_id
(2) 用 params:{} 进行传参
# 前端发送ajax
this.$axios.get(`${this.$settings.Host}/article/`,{
params:{
collection: this.collection_list[this.current_collection].id,
},
headers:{...}
})
后端路由:
path("",...),
视图方法里获取 collection:
collection_id = request.query_params.get("collection")
二. put和post请求方法的查询字符串参数在请求体中, 所以要用路由参数或者用 {} 进行传参
(1) 用路由参数进行传参同上述(1)
(2) 用{}直接传参
this.$axios.put(`${this.$settings.Host}/article/public/${article_id}/`,{
is_public: is_public,
},{
headers:{...}
})
后端视图中获取is_public:
is_public = request.data.get("is_public")