Vous ne pouvez pas sélectionner plus de 25 sujets Les noms de sujets doivent commencer par une lettre ou un nombre, peuvent contenir des tirets ('-') et peuvent comporter jusqu'à 35 caractères.

views.py 2.1KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687
  1. from django.shortcuts import render
  2. from django.http import HttpResponse
  3. from asgiref.sync import async_to_sync,sync_to_async
  4. from django.template import Template, RequestContext
  5. import inspect
  6. from django.views.decorators.csrf import csrf_exempt
  7. # from wsps.tasks_loop import *
  8. # wsps.
  9. # import tasks_loop
  10. import wsps.tasks_loop
  11. glob_cl = wsps.tasks_loop.glob_cl
  12. # glob_cl.has_cl
  13. # glob_cl.acl
  14. # Create your views here.
  15. p=print
  16. from django.middleware.csrf import get_token
  17. def your_view(request):
  18. csrf_token = get_token(request)
  19. csrf_token = get_token(request)
  20. csrf_token_html = '<input type="hidden" name="csrfmiddlewaretoken" value="{}" />'.format(csrf_token)
  21. def index(request):
  22. return HttpResponse("Hello World")
  23. @csrf_exempt
  24. def fn_v(request,*a,**kw):
  25. # glob_cl.acl
  26. # if
  27. p("fn_v",request)
  28. # for en in dir(request):
  29. # p(en)
  30. pi = glob_cl.post_info(request,*a,**kw)
  31. if (pi and pi["ret"]):
  32. return pi["ret"]
  33. # return HttpResponse("fn_v?")
  34. if (glob_cl.has_cl):
  35. p("async_to_sync sig:",inspect.signature(async_to_sync))
  36. p("group_send sig:",inspect.signature(glob_cl.acl.group_send))
  37. async_to_sync(glob_cl.acl.group_send)("av2",{"type":"jsto_send","hi":"test"})
  38. return HttpResponse("fn_v has_cl")
  39. return HttpResponse("fn_v")
  40. return
  41. def fn_v0(request,*a,**kw):
  42. return HttpResponse("fn_v0")
  43. arbitrary_string_as_template = "abc 123 {% csrf_token %}"
  44. def fn_v1(request,*a,**kw):
  45. # return render()
  46. template = Template(arbitrary_string_as_template)
  47. context = RequestContext(request)
  48. return HttpResponse(template.render(context))
  49. return HttpResponse("fn_v1")
  50. def fn_v2(request,*a,**kw):
  51. csrf_token = get_token(request)
  52. csrf_token_html = '...<input type="hidden" name="csrfmiddlewaretoken" value="{}" />'.format(csrf_token)
  53. return HttpResponse(csrf_token_html)
  54. return render(request,"index.html")
  55. # return render("index.html","index.html")
  56. template = Template(arbitrary_string_as_template)
  57. context = RequestContext(request)
  58. return HttpResponse(template.render(context))
  59. return render(request,template)
  60. return HttpResponse("fn_v2")
  61. r'''
  62. fn_v = index
  63. fn_v0 = index
  64. fn_v1 = index
  65. fn_v2 = index
  66. # '''