我有一個與用戶(django.contrib.auth.models.User)模型OneToOne關係的自定義模型;Django post_save掛鉤導致syncdb錯誤
class Profile(models.Model):
user = models.OneToOneField(User)
我想創建一個新的配置文件,每次創建一個用戶。所以我添加了一個信號;
@receiver(post_save, sender=User)
def _setup_user(sender, **kwargs):
"""
Create a new profile instance for each user
"""
created = kwargs.get('created', False)
user = kwargs.get('instance', False)
if created and user:
profile = Profile(user=kwargs['instance'])
profile.save()
這一切都很好,創造了管理員用戶時,因爲配置表還尚未創建(我使用的是南來管理遷移),但是執行syncdb拋出一個錯誤。
我該如何解決這個問題?
編輯
所以,省略了創建超級用戶的工作;
$ ./manage.py syncdb --noinput
$ ./manage.py migrate
$ ./manage.py createsuperuser