第七色在线视频,2021少妇久久久久久久久久,亚洲欧洲精品成人久久av18,亚洲国产精品特色大片观看完整版,孙宇晨将参加特朗普的晚宴

為了賬號安全,請及時綁定郵箱和手機立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

IntegrityError(1452,'無法添加或更新子行:外鍵約束失敗)

我正在使用自定義用戶模型(遵循本教程)并且一切正常。當我使用我在 /admin 會話中使用 createsuperuser 創(chuàng)建的管理員用戶登錄時,我可以添加/刪除/編輯任何我想要的東西。當我使用其他用戶登錄時,我已授予員工和管理員權(quán)限,每當我想向數(shù)據(jù)庫添加一些內(nèi)容時,我都會收到此錯誤:IntegrityError at /admin/users/user/13/change/ (or whichever action I'm doing) (1452, 'Cannot add or update a child row: a foreign key constraint fails (`NMS_database`.`django_admin_log`, CONSTRAINT `django_admin_log_user_id_c564eba6_fk_auth_user_id` FOREIGN KEY (`user_id`) REFERENCES `auth_user` (`id`))') [...]Exception Location:    /home/me/python_ve/lib/python3.8/site-packages/MySQLdb/connections.py in query, line 239這是我的用戶模型:class User(AbstractBaseUser):    email = models.EmailField(verbose_name="email", unique=True, max_length=255)    first_name = models.CharField(max_length=30, blank=True, null=True)    surname = models.CharField(max_length=30, blank=True, null=True)    additional = models.BooleanField(default=False)    individual = models.BooleanField(default=True)    active = models.BooleanField(default=True) #can they login?    staff = models.BooleanField(default=False) #staff user non superuser    admin = models.BooleanField(default=False) #superuser    date_joined = models.DateTimeField(auto_now_add=True)    USERNAME_FIELD = 'email' # default identifier for that user which will used for logging in    #email (USERNAME_FIELD in this case) and password are required by default    REQUIRED_FIELDS = ['first_name', 'surname']    def __str__(self):        return "%s %s" % (self.first_name, self.surname)    def get_full_name(self):        return self.first_name    def has_perm(self, perm, obj=None):        return self.admin    def has_module_perms(self, app_label):        return True    @property    def is_staff(self):        return self.staff    @property    def is_admin(self):        return self.admin# hook in the New Manager to our Model    objects = UserManager()如何讓不是超級管理員的用戶真正能夠在 /admin 中執(zhí)行操作?
查看完整描述

1 回答

?
慕沐林林

TA貢獻2016條經(jīng)驗 獲得超9個贊

這是由于關(guān)于自定義用戶模型的一般觀點,即它們不能在中途引入。

具體來說,我的模型使用一個表users_user來存儲有關(guān)新添加用戶的詳細信息,以及auth_user用于添加鏈接到我在數(shù)據(jù)庫中的其他模型的外鍵的表。事實上,我將用戶詳細信息從users_user表復(fù)制粘貼到auth_user表(因此有重復(fù))的臨時解決方法解決了問題(即沒有返回任何錯誤)。

這里的“簡單”解決方案是完全刪除數(shù)據(jù)庫并重新創(chuàng)建它。就我而言,我發(fā)現(xiàn)的其他解決方案(例如this)沒有幫助。


查看完整回答
反對 回復(fù) 2022-10-18
  • 1 回答
  • 0 關(guān)注
  • 262 瀏覽
慕課專欄
更多

添加回答

了解更多

舉報

0/150
提交
取消
微信客服

購課補貼
聯(lián)系客服咨詢優(yōu)惠詳情

幫助反饋 APP下載

慕課網(wǎng)APP
您的移動學(xué)習伙伴

公眾號

掃描二維碼
關(guān)注慕課網(wǎng)微信公眾號