我正在尝试为django开发的plugin编辑器开发一个简单的Editra。现在它可以在编辑器中创建django项目和应用程序。编辑器基于wxPython,我想从编辑器中启动devserver,显示一个简单的表单,其中包含停止或终止/重启服务器的选项。
目标是最小化在控制台/ shell中执行重复任务的需要。我这样做的原因是我在一家只有微软的公司工作,你很少使用命令行来做事情。当我进出shell /命令行来启动/重新启动服务器,syncdb,迁移等时,销售django很难。为了让我的同事出售django并希望让开发变得更容易(至少对于喜欢在IDE中工作的django开发人员我已经开始为Editra创建一个插件。
现在,该插件添加了一个名为Django的菜单项,其中包含两个子项;创建项目并创建应用程序。正在进行的上下文菜单将根据正在编辑的文件的内容提供不同的选项;右键单击一个包含settings.py的窗口,可以选择启动devserver,调用syncdb,迁移如果安装了south,创建超级用户等。右键单击views.py将为您提供帮助您生成视图或模板的选项,在models.py脚手架或生成admin.py等。
我唯一无法理解的是如何从应用程序内部启动/终止/重启devserver。我真正喜欢的是有一个小窗口,周围有两个按钮;停止或重启,这将 - 停止或重启devserver。或者编辑器内的播放和停止按钮执行相同的操作。问题是从应用程序中控制devserver进程。
如果有人对此有任何了解,我将非常感激。任何帮助,意见,建议或意见都表示赞赏。
此致 Thomas Weholt
答案 0 :(得分:1)
你想要使用Python的子进程模块来启动和终止开发服务器进程,我想:http://docs.python.org/library/subprocess.html
你可能对Popen对象最感兴趣。有了它,您可以启动并终止开发服务器。