2017-11-01 7 views
0

私のDjangoプロジェクトで私は複数のアプリケーションを持っており、すべてのアプリケーションに一般的なCommandというカスタム(populate_db)を追加したいと考えています。ただし、DjangoはINSTALLED_APPSの場所からのみカスタムコマンドを登録しているようです(つまり、managementフォルダをアプリのフォルダ内に配置する必要があります)。カスタムDjangoコマンドのカスタムロケーション

managementフォルダをproject_folderに配置する方法はありますか。

. 
├── __init__.py 
├── app_1 
| ├── admin.py 
| └── ... 
├── app_2 
| ├── admin.py 
| └── ... 
├── project_folder 
| ├── settings.py 
| └── management 
|  ├── __init__.py 
|  └── commands 
|   ├── __init__.py 
|   └── populate_db.py  
└── manage.py 

答えて

2

Djangoはインストールされているアプリの管理コマンドをmanagement/commandsにのみ探します。それらを登録する別の方法はありません。

INSTALLED_APPSproject_folderを追加して、Djangoが管理コマンドを見つけられるはずです。

または'main'という名前のアプリを作成する方法もあります。これには、populate_db管理コマンドのようなプロジェクト全体のユーティリティが含まれています。

+0

ありがとうございました! –

関連する問題