Django 类视图相互之间的调用
类视图之间如何相互调用
例如:
1 2 3 4 5 6 7 8 |
class GetTopology(View): def get(self,request): result = neutronapi.get_networks_topology(request) return JsonResponse(restapi(True,data=result)) class Demo(View): def get(self,request): return 调用 GetToplogy 视图 |
解决方法
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 |
from django.http import QueryDict class GetTopology(View): def get(self,request): result = neutronapi.get_networks_topology(request) return JsonResponse(restapi(True,data=result)) class Demo(View): def get(self,request): # 这里的 request 是 django.http.HttpRequest # 如果 要构造 POST 请求呢 # 咱们可以 构造一个 HttpRequest 请求 rq = HttpRequest() rq.method = "POST" rq.POST = QueryDict('subnet_id=xxx&network_id=xxx') # 如果牵扯到 session 方面 rq.session = request.session return GetTopology.as_view()(rq) |
注意 :这里的 request
是 django.http.HttpRequest
而不是 rest_framework.request.Request


