簡體   English   中英

Django 如果 PK 從其他表中刪除,則 select_related 返回空查詢集

[英]Django select_related returning empty query set if the PK deleted from other table

假設我有一個與用戶 model 具有外鍵關系的表。

class MyModel(models.Model):
       created_user = models.ForeignKey(settings.AUTH_USER_MODEL)
   

我正在接受這樣的查詢集

qs = MyModel.objects.select_related('created_user').all()

此查詢工作正常,但如果用戶從數據庫中刪除,則顯示為空查詢集

如果您希望實例在刪除后受到保護,那么您可以使用models.PROTECT選項:

class MyModel(models.Model):
       created_user = models.ForeignKey(settings.AUTH_USER_MODEL, on_delete=models.PROTECT)   

查看ForeignKey.on_delete的所有選項。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM