来自 Python 脚本的 Django 运行服务器

Django runserver from Python script

启动 Django 服务器的正常方法是 运行 从终端或 bash 脚本执行以下命令:

python manage.py runserver [Ip.addr]:[port] 

例如

python manage.py runserver 0.0.0.0:8000

如何从 Python 脚本启动 Django 服务器?

一个选项如下

import os
if __name__ == "__main__":
    os.environ.setdefault("DJANGO_SETTINGS_MODULE", "server.settings")
    from django.core.management import execute_from_command_line
    args = ['name', 'runserver', '0.0.0.0:8000']
    execute_from_command_line(args)

有没有更好的方法?

Python 已经内置 HTTP 服务器

python -m SimpleHTTPServer

或者您有替代 运行 django 服务器

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

from django.core.management import call_command
from django.core.wsgi import get_wsgi_application 
application = get_wsgi_application()
call_command('runserver',  '127.0.0.1:8000')