0

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 など) が開始されますが、構成が読み込まれていません。

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

どうすればそれを機能させることができますか?

4

1 に答える 1

2

これは、shell_plus.pyがシェルを起動しIPython.embedないように使用しているためです。IPython.start_ipythonEmbed は構成ファイルをロードしません。コードを変更するか、SHELL_PLUS_PRE_IMPORTS などを使用して、必要なものをロードします。

于 2014-03-26T09:41:07.153 に答える