22

デフォルトのシェルの代わりにshell_plusを実行するように PyCharm を設定する方法はありますか?

管理コマンドのテキストを「開始スクリプト」に入れようとしましたが、次のようになります

if __name__ == "__main__":
    os.environ.setdefault("DJANGO_SETTINGS_MODULE", "settings")

    # The new Django 1.4 default manage.py wants "from django..." before
    # importing settings, but we usually tinker with sys.path in
    # settings_local.py, which is called from settings.py. Importing
    # settings.py works but does mean some double importing. Luckily that
    # module does very little work.
    import settings
    # appease pyflakes; don't ever do this in
    # non-super-meta-namespace-trickery code
    settings

    from django.core.management import execute_from_command_line

    execute_from_command_line("shellplus")

実際には shell_plus を実行していません。

デフォルトではなく、「開始スクリプト」が追加で発生するようです。

Shell_plus は、特にすべての Django モデル クラスを自動的にインポートします。

4

8 に答える 8

20

shell_plus コードにフックすることで、モデル オブジェクトの自動読み込みを取得しました。これを のデフォルトの起動スクリプトに追加しましたPreferences > Build, Execution, Deployment > Console > Django Console

from django_extensions.management import shells
from django.core.management.color import color_style
imported_items = shells.import_objects({}, color_style())
for k, v in imported_items.items():
    globals()[k] = v

これは PyCharm 2018.3.3 Pro にありました

完全を期すために、これは開始スクリプトの完全な内容です。

import sys; print('Python %s on %s' % (sys.version, sys.platform))
import django; print('Django %s' % django.get_version())
sys.path.extend([WORKING_DIR_AND_PYTHON_PATHS])
if 'setup' in dir(django): django.setup()
import django_manage_shell; django_manage_shell.run(PROJECT_ROOT)

from django_extensions.management import shells
from django.core.management.color import color_style
imported_items = shells.import_objects({}, color_style())
for k, v in imported_items.items():
    globals()[k] = v
于 2019-02-13T12:51:54.773 に答える
2

これを解決する 1 つの方法は、新しい Python 実行構成を作成することです。ターゲットをモジュールに設定しmanage.py、プロジェクトのファイルを選択します。次にshell_plus、パラメーター フィールドに入力します。作業ディレクトリをプロジェクト ディレクトリに設定します。最後に、実行を に設定しRun with Python Consoleます。変更を適用してから、新しい構成を実行します。

PyCharm 実行 / デバッグ構成のスクリーンショット

于 2020-03-12T01:04:59.787 に答える
0

ジャンゴシェル実行構成

この構成は私にとってはうまくいきます

于 2021-02-04T03:56:33.773 に答える