请问一下Django中views如何设置全局变量?

Django中views如何设置全局变量


喵喵时光机
浏览 1338回答 4
4回答

侃侃尔雅

问题在于test = 1实际上是定义了一个局部变量test,它隐藏了全局作用域中的test变量。要指明使用全局的test变量,需要使用global关键字。12345678910111213from django.http import HttpResponse test = 0 def a(request):    global test    test = 1    return HttpResponse('view a: test = %d' % test)     def b(request):    global test    test += 1    return HttpResponse('view b: test = %d' % test)

德玛西亚99

简单使用的话,不要使用整数这种不可变的对象类型。使用列表或者字典。比如:1234567test = [0]def a(request):    test[0] += 1    passdef b(request):    print(test[0])    pass

狐的传说

你一刷新页面,这个方法就执行了,所以里面的进程就执行了啊。按照你的需求,你可以给那个按钮增加一个参数,比如1<a&nbsp;href="url?go=1">start</a>12345678910def&nbsp;mysql(request):&nbsp;&nbsp;&nbsp;go&nbsp;=&nbsp;request.GET.get('go',&nbsp;0)&nbsp;&nbsp;&nbsp;&nbsp;if&nbsp;go&nbsp;==&nbsp;1:&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;mysql_version&nbsp;=&nbsp;"5.1.73"&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;mysql_port&nbsp;=&nbsp;os.popen("netstat&nbsp;-ntlp&nbsp;|&nbsp;grep&nbsp;mysqld&nbsp;|&nbsp;awk&nbsp;'{print&nbsp;$4}'&nbsp;|&nbsp;awk&nbsp;-F&nbsp;':'&nbsp;'{print&nbsp;$NF}'").read()&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;mysql_start&nbsp;=&nbsp;os.popen("/etc/rc.d/init.d/mysqld&nbsp;start&nbsp;>>/dev/null").read()&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;mysql_stop&nbsp;=&nbsp;os.popen("/etc/rc.d/init.d/mysqld&nbsp;stop&nbsp;>>/dev/null").read()&nbsp;&nbsp;&nbsp;eturn&nbsp;render_to_response('mysql.html',locals())
打开App,查看更多内容
随时随地看视频慕课网APP