Django中的“management.py”是什么?
根据这个文档,我需要在management.py里放一些东西,这样当我运行“syncdb”时,东西就会被创建。
我应该在哪里做这个呢?我到处找都没看到management.py。
http://code.google.com/p/django-notification/wiki/IntegratingNotification#Creating_Notice_Types
3 个回答
0
django.db.models.signals.pre_syncdb
这是在syncdb命令开始安装应用程序之前发送的信号。
任何监听这个信号的处理程序需要放在特定的位置:也就是你在INSTALLED_APPS中某个管理模块里。如果处理程序放在其他地方,syncdb可能找不到它们。
这是因为syncdb不会加载Django项目的所有部分,所以如果你在models.py
中定义你的信号,syncdb就找不到它。但是在这里定义的信号不需要在框架的其他地方出现。
0
在Django应用中,并不是每个模块在项目启动时都会被执行。只有models.py这个文件会被执行。虽然这样有点不太好,但你可以把代码放在这里。至于management.py
这个文件,可能是个错误。
6
把它放到相关应用的文件夹里。例如,如果你的项目结构是这样的:
my_project/
my_app/
models.py
views.py
tests.py
就把它放在这里:
my_project/
my_app/
management.py
models.py
views.py
tests.py
(这样会在 *my_app* 这个包里创建一个管理的 模块,在Python的说法里就是这样。)