考慮這個的Django代碼:檢查對象在DB(Django的)存在
class User(models.Model):
name = models.CharField(null=True, blank=False, verbose_name=_("Name"), help_text='User Name', max_length=256)
class UsersGroup(models.Model):
name = models.CharField(null=False, blank=False, verbose_name=_("Name"), help_text='Users Group Name', max_length=256)
users = models.ManyToManyField(User)
# ...
with transaction.atomic():
group.users.add(user)
如果什麼用戶從DB交易開始前刪除嗎?它會將不存在的用戶添加到group.users
。這是一個錯誤。
在這種情況下如何保護數據庫完整性?
@MosesKoledoye用戶是廣告通過Web界面。我不明白你:這與用戶的添加方式有什麼關係? – porton