Django: исчезла команда управления, и я не могу проверить скрипт - PullRequest
1 голос
/ 08 февраля 2011

У меня была вся команда, настроенная и работающая, затем я настроил для нее задание Cron, и теперь оно исчезло из списка справки manage.py всех доступных команд.

Он находится в /app/management/commands/feed_update.py

и имеет класс Command (BaseCommand) с функцией handle ().

Проблема в том,что мой скрипт имеет зависимости от app.models, поэтому я даже не могу запустить скрипт, чтобы увидеть, если что-то не так, и почему manage.py не подхватит его автоматически.

Есть ли способ заставить manage.py найти скрипт?

Спасибо.

Редактировать 1: Я только что попытался сделать

manage.py shell

>> import app.management.commands.feed_update as fu
>> fu.Command.handle(fu.Command())

и все работало нормально.Я просто не понимаю, почему он не позволяет мне запускать его через manage.py

У меня есть __init__.py файлов в каждой папке ..

Редактировать 2: приложение установлено в настройках.py и является моим основным приложением, которое обслуживает мой веб-контент, поэтому я абсолютно уверен, что он установлен.

Он не может найти команду ни в Cron, ни когда я захожу через терминал (даже если команды других приложений отображаются правильно).

Ответы [ 2 ]

0 голосов
/ 12 августа 2011

Я только что решил проблему, почти идентичную этой, за исключением того, что я использую django-admin.py.Команда управления, которая отлично работала на моем компьютере разработчика, не появлялась в списке команд, показанном, когда вы запускаете django-admin.py без аргумента.Оказывается, вам нужно запустить django-admin.py из корневой папки вашего проекта, если вы хотите, чтобы пользовательские команды управления работали.

0 голосов
/ 08 февраля 2011

Оно должно быть внутри приложения, которое указано в settings.INSTALLED_APPS.

Если оно уже существует, уверены ли вы, что в задании cron используются правильные параметры настройки.

...