2015-03-13 2 views
0

Я пытаюсь понять, как работает стрельба с Django.Понимание стрельбы и джанго

Документов на Running Django in Gunicorn as a generic WSGI application говорят:

At its simplest, gunicorn just needs to be called with the location 
of a module containing a WSGI application object named application. 

Так что вы можете сделать:

$ gunicorn myproject.wsgi 

И он будет работать. Но что именно это делает? Я смотрю в корень моего проекта Django, но там нет файла с именем myproject.wsgi. Итак, что стоит за магией?

docs also say что:

Gunicorn will look for a WSGI callable named application if not specified. 

Что это значит? Что такое «приложение» в контексте моего приложения Django? Должен ли я указывать его как имя моего приложения Django?

ответ

3

У вас должен быть файл wsgi.py в корне вашего проекта django (созданный с помощью проекта jjjo-admin startproject myproject).

Это wsgi.py имеет application вызываемые:

""" 
WSGI config for myproject project. 

It exposes the WSGI callable as a module-level variable named ``application``. 

For more information on this file, see 
https://docs.djangoproject.com/en/1.7/howto/deployment/wsgi/ 
""" 
import os 

from django.core.wsgi import get_wsgi_application 

os.environ.setdefault("DJANGO_SETTINGS_MODULE", "myproject.settings") 

application = get_wsgi_application() 
+1

Файла находится не в корневом каталоге проекта, но внутри основного приложения (который имеет имя сохранения как сам проект). –

Смежные вопросы