使用SublimeREPL作为Django shell

时间:2014-10-18 18:34:39

标签: sublimetext sublimerepl django-shell

我正在学习Django,而Django shell是经常使用的东西,但来回切换到终端窗口有点令人沮丧。

我尝试使用SublimeREPL-shell,但它无法正常使用。例如,我可以使用python manage.py shell在REPL窗口中进入交互式控制台,但之后不会显示所有命令和结果:它看起来像这样

bash: no job control in this shell
bash-3.2$ python manage.py shell
Python 2.7.6 (default, Sep  9 2014, 15:04:36) 
[GCC 4.2.1 Compatible Apple LLVM 6.0 (clang-600.0.39)] on darwin
Type "help", "copyright", "credits" or "license" for more information.
(InteractiveConsole)

好吧,如果我quit(),结果会显示,并且它们都会显示(但有点太晚了......)。像这样的东西

Type "help", "copyright", "credits" or "license" for more information.
(InteractiveConsole)
>>> >>> [<Person: John>, <Person: Jane>]
>>> bash-3.2$ 

所以我想知道这是否是一种正确的方法呢?

1 个答案:

答案 0 :(得分:4)

在manage.py路径中新建一个.py文件。它包含这些。

#!/usr/bin/env python
# run Django shell in SublimeREPL
# how to use: Meuns > Tools > SublimeREPL > Python > Python - RUN current file
import os
import sys

if __name__ == "__main__":
    os.environ.setdefault("DJANGO_SETTINGS_MODULE", "[your app].settings")

    from django.core.management import execute_from_command_line

    execute_from_command_line(['.', 'shell'])

使用方法:菜单&gt;工具&gt; SublimeREPL&gt; Python&gt; Python - 运行当前文件