Tre*_*ewq 14 python django django-command-extensions
当我./manage.py process_email在我的应用程序中,我得到ImportError: No module named commands.process_email.
我的目录布局是:
./
??? __init__.py
??? admin.py
??? forms.py
??? management
? ??? __init__.py
? ??? commands
? ??? __init.py__
? ??? process_email.py
??? models.py
??? views.py
Run Code Online (Sandbox Code Playgroud)
process_email命令的来源是:
from django.core.management.base import BaseCommand, CommandError
from django.conf import settings
from website.event.models import Event
class Command(BaseCommand):
def handle(self, *args, **options):
process_email()
def process_email():
print "processing email"
Run Code Online (Sandbox Code Playgroud)
和我得到的错误:
(website.com)kings@bob-kings-MacBook ~/code/website.com/website $ > ./manage.py process_email
Traceback (most recent call last):
File "./manage.py", line 14, in <module>
execute_manager(settings)
File "/Users/kings/code/website.com/lib/python2.6/site-packages/django/core/management/__init__.py", line 438, in execute_manager
utility.execute()
File "/Users/kings/code/website.com/lib/python2.6/site-packages/django/core/management/__init__.py", line 379, in execute
self.fetch_command(subcommand).run_from_argv(self.argv)
File "/Users/kings/code/website.com/lib/python2.6/site-packages/django/core/management/__init__.py", line 261, in fetch_command
klass = load_command_class(app_name, subcommand)
File "/Users/kings/code/website.com/lib/python2.6/site-packages/django/core/management/__init__.py", line 67, in load_command_class
module = import_module('%s.management.commands.%s' % (app_name, name))
File "/Users/kings/code/website.com/lib/python2.6/site-packages/django/utils/importlib.py", line 35, in import_module
__import__(name)
ImportError: No module named commands.process_email
Run Code Online (Sandbox Code Playgroud)
当我这样做时./manage.py,它确实显示process_email在"可用的子命令:"中.这告诉我manage.py看到process_email.py.此外初始化的.py是空的(我不认为它很重要,但只是FYI).
小智 22
是__init.py__正确命名?我不确定这是你的树上的拼写错误,还是实际上是这样命名的.
Python处理包含__init__.py模块的目录- 但是,如果该文件不存在,它将不处理该目录 - 因此它不会处理__init.py__或"模块".这个文件是空白的完全没问题 - 但是,如果不是,你也可以从中导入(django做了很多),你也可以定义从模块导出的内容.
| 归档时间: |
|
| 查看次数: |
5634 次 |
| 最近记录: |