ipython使用我的配置文件,但通过django_extensions& shell_plus,它没有

时间:2014-03-12 02:22:07

标签: django ipython django-extensions

我的ipython配置文件没有被django_extensions的shell_plus加载。

我的ipython配置文件包含:

c.InteractiveShellApp.exec_lines = ['aa=5',]

测试它:

(virtualenv) $ ipython
>>>  ....
In [1]: aa
Out[1]: 5

的工作原理。现在,测试通过django_extensions调用的ipython:

(virtualenv) $ python manage.py shell_plus

这让我进入ipython(突出显示作品,%run works等),但没有加载我的配置:

In [1]:aa
NameError: name 'aa' is not defined

我怎样才能让它发挥作用?

1 个答案:

答案 0 :(得分:2)

因为shell_plus.py使用IPython.embed而不是IPython.start_ipython来启动shell。 Embed不会加载您的配置文件。更改代码或使用SHELL_PLUS_PRE_IMPORTS之类的东西来加载你想要的东西。