2012-02-10 121 views
4

我有一个post_save信号为所有对象(不仅是我的应用程序),并在其中创建一个SignalInfo(这个模型是从我的应用程序)对象,将有关创建/编辑对象的信息放入它和保存。它工作正常,直到我开始使用南迁移。Django post_save和南迁移

的问题是,当我做syncdb现在,我的应用程序不会创建表(他们会./manage.py migrate后),但在syncdb正在创造像auth.permission新的对象和我的信号试图创建SignalInfo的对象,但它可以因为我的应用程序表没有准备好,我有DatabaseError。

我该如何让它工作?

回答

1

您可以将SignalInfo创建代码包装在try...except块中,以免错误不会发生。唯一的副作用是由syncdb创建的初始模型不会有SignalInfo与它们关联的对象。