2013-07-31 3 views
7

내 django 프로젝트에 두 개 이상의 응용 프로그램이 있다고 가정하면 하나의 응용 프로그램이있을 때 사용자 정의 manage.py 명령을 성공적으로 작성하고 실행할 수있었습니다 (A).여러 응용 프로그램에서 사용자 정의 django manage.py 명령을 작성하는 방법

이제 새 응용 프로그램 인 B이 있으며 https://docs.djangoproject.com/en/dev/howto/custom-management-commands/에 언급 된대로 B/manangement/commands이라는 디렉토리 구조를 만들고 사용자 정의 모듈을 작성했습니다.

나는 파이썬 manage.py를 실행할 때 불평을 계속한다. Unknown command. 그러나이 명령을 다른 앱 (예 : A/management/commands 폴더)으로 이동 한 다음 을 실행하면 원활하게 작동합니다.

어떻게 해결할 수 있습니까?

+0

정확히 무엇을했는지 표시하지 않아도됩니다. –

+1

아마 설치된 앱에 B 설정을 추가하지 않았습니다. – Babu

+0

나는 오타이지만 더 잘 지적하고 싶습니다. 'manangement'라는 단어의 철자가 잘못되었습니다. –

답변

16

@Babu가 의견에서 귀하의 settings.pyINSTALLED_APPS에 앱을 추가하지 않은 것으로 보입니다.

managementcommands 폴더의 __init__.py 파일 (파이썬 모듈에 필요함)이 누락되었을 수도 있습니다.

또는 "미안"된 "관리"또는 "명령"또는 실행중인 명령의 이름이 잘못 표시 될 수 있습니다. 당신은 단지 지정하지 않고 명령을 python manage.py을 실행하면

+0

감사합니다. __init__.py 파일이 상위 디렉토리에없는 내부 디렉토리에 있습니다. – user1335608

0

대부분의 경우, 당신은 장고 찾을 수있는 명령의 목록을 출력합니다, 당신의 settings.py

에서 응용 프로그램 B는 포함되지 않았다.

이 맞춤법에게 명령 이름을 배제 할 수 있지만 당신이 managementcommands 두 패키지를 만들어 여부의 질문에 대답하지 않는, 또는 앱 B 단순히 settings.INSTALLED_APPS

0

에 나열되지 않은 경우 앱 BINSTALLED_APPSsettings.py에 등록하지 않은 것 같습니다. __init__.py 파일을 두 폴더 (관리명령)에 추가하여 패키지로 만들어야합니다. 폴더 이름의 철자가 올바른지 확인하십시오.

관련 문제