django视图中的更改在重启uwsgi之前不会反映到页面中



我安装了Django+Uwsgi+Nginx。项目正在运行。但是,当我在view中更改某些内容时,更改不会反映到页面,直到我重新启动uwsgi。我应该重新启动uwsgi每次我在view改变?但是当我添加时间到view显示在页面上。每次刷新页面,显示的时间都在变化

我的view是:

from django.shortcuts import render
from django.http import HttpResponse   # added
from django.utils import timezone
def home(request):
return HttpResponse('This is the home page. 101' + str(timezone.now()))

Myurls.py:

from django.contrib import admin
from django.urls import path
from godentiapp import views    # added 
urlpatterns = [
path('', views.home, name='home'),    # added
path('admin/', admin.site.urls),  
]

每次[我]在视图中进行更改时,[我]应该重启uwsgi吗?

,每次你改变源代码,你需要重新启动web服务器,因为文件总是加载一次。Python解释器将读取源文件,并将其加载到内存中。修改后的文件不会被反映。

如果你使用的是开发模式的Django,对于源文件的修改,它会自动重启服务器[Django-doc]:

开发服务器根据需要自动为每个请求重新加载Python代码。您不需要重新启动服务器以使代码更改生效。但是,有些操作(如添加文件)不会触发重新启动,因此在这些情况下,您必须重新启动服务器。

但是在生产环境中不会这样做,也不应该这样做,因为这会导致安全风险。

最新更新