我正在编写一个针对Django项目的基于Web的代码编辑器。在编辑器内部,我想启动Django runserver命令,而不会干扰编辑器本身的服务器。以下是我使用的代码。服务器(端口9999)已经启动,但是当我更改刚刚启动服务器的项目的代码时,两个服务器都会停止运行。错误信息是“该端口已被占用”。
def runserver(request, project_slug):
project = Project.objects.get(slug=project_slug)
import os
os.system('cd %s; pwd; env; DJANGO_SETTINGS_MODULE=%s.settings; rm nohup.out; nohup python manage.py runserver 0.0.0.0:9999 &' % (project.get_current_directory(), project.slug))
return HttpResponseRedirect(request.META['HTTP_REFERER'])