Изменение в представлении django не отражается на странице до перезапуска uwsgi
Я установил Django + Uwsgi + Nginx. Проект запущен. Но когда я изменяю что-то в представлении, изменения не отражаются на странице, пока я не перезапущу uwsgi. Нужно ли перезапускать uwsgi каждый раз, когда я вношу изменения в представление? Но когда я добавляю время в представление для отображения на странице. Отображаемое время меняется каждый раз, когда я обновляю страницу.
Мое мнение таково:
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()))
Мой urls.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 каждый раз, когда [я] вношу изменения в представление?
Да, каждый раз, когда вы изменяете исходный код, вам необходимо перезапустить веб-сервер, поскольку файлы всегда загружаются один раз. Интерпретатор Python прочитает исходный файл и загрузит его в память. Изменения в файле не будут отражены.
Если вы работаете с Django в режиме разработки, для модификации файла sourcde он будет автоматически перезапускать сервер [Django-doc]:
Сервер разработки автоматически перезагружает код Python для каждого запроса, по мере необходимости. Вам не нужно перезапускать сервер, чтобы изменения кода вступили в силу. Однако некоторые действия, например, добавление файлов, не вызывают перезагрузки, поэтому в таких случаях вам придется перезапустить сервер.
Но это не делается в производстве, и не должно делаться, поскольку это может привести к рискам безопасности.