User (django.contrib.auth.models.User) モデルとの OneToOne 関係を持つカスタム モデルがあります。
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()
これはすべて問題ありませんが、プロファイル テーブルがまだ作成されていないため、admin ユーザーの作成時に syncdb がエラーをスローします (移行の管理に South を使用しています)。
どうすればこれを回避できますか?
編集
したがって、スーパーユーザーの作成を省略してもうまくいきました。
$ ./manage.py syncdb --noinput
$ ./manage.py migrate
$ ./manage.py createsuperuser