Django - 在syndb命令上运行自定义方法

时间:2011-01-12 07:29:08

标签: django django-syncdb

我想知道在执行syncdb时是否有办法运行自定义方法。 我想要完成的是将邮件模板加载到数据库中。因为我需要在db中的多个条目中使用几乎相同的模板,所以我不想将它放在initial_data文件中。

我搜索了django文档和网页,但找不到任何解决方案。

感谢任何帮助。

1 个答案:

答案 0 :(得分:3)

post_syncdb信号怎么样?

http://docs.djangoproject.com/en/dev/ref/signals/#django.db.models.signals.post_syncdb

将处理程序连接到信号并在函数中运行您想要的任何内容。

嗯,它可能适用于您的情况,也可能不适用。表创建后会调用post_syncdb并发送到所有应用程序,因此如果您需要一种处理所有默认数据创建的方法,则必须使用类似以下代码段的内容来检测信号是否适用于最后一个应用程序在列表中,以确保您的表存在:P。

http://djangosnippets.org/snippets/1988/

嗯,这是个主意。享受!