管理パネルからユーザーを作成しようとすると、このエラーが発生します。なぜか分からない。しかし、もし私がuser = User.objects.create_user('aegon', '[email protected]', 'hehehe123')
でそれを行うとうまくいくでしょう。これを引き起こしていることへのヒント?1062 "キー 'user_id'の重複エントリ '3'
データベース内のauth_userには1人のユーザーしかいません。
エラー:
django.db.utils.IntegrityError: (1062, "Duplicate entry '3' for key 'user_id'")
私のモデル:おそらく
class transaction(models.Model):
amount = models.IntegerField()
holding = models.ForeignKey(holding, on_delete=models.CASCADE)
user = models.ForeignKey(User, on_delete=models.CASCADE, blank=True, null=True)
def __str__(self):
return "amount: " + str(self.amount) + " - ip : " + str(self.holding.name) + " - user: " + str(self.user.username)
class UserProfile(models.Model):
user = models.OneToOneField(User, on_delete=models.CASCADE)
ip = models.IntegerField(default=0)
ingameName = models.CharField(max_length=50, default='NotSet')
userprofit = models.IntegerField(default=0)
user_transactions = models.ForeignKey(transaction, on_delete=models.CASCADE, blank=True, null=True)
def create_user_profile(sender, instance, created, **kwargs):
if created:
UserProfile.objects.create(user=instance)
post_save.connect(create_user_profile, sender=User)
おそらくpost_save信号コードが原因です。コメントして確認できますか?エラーはなくなりましたか? – Nevertheless