Skip to main content
 首页 » 编程设计

python之from django.contrib.auth.models import User vs 将用户 ForeignKey 定义为 owner = models.ForeignKey ('auth.User' )

2024年10月25日6552php

如何从Django自带的auth包中导入User,我需要做的:

from django.contrib.auth.models import User 

虽然要引用相同的 User 模型来创建 ForeignKey,我需要做:

owner = models.ForeignKey('auth.User', related_name='snippets') 

而不是 'auth.models.User'?

我在这里遵循示例:http://www.django-rest-framework.org/tutorial/4-authentication-and-permissions

请您参考如下方法:

这是由于 Django 的“惰性关系”。你可以看到这个 here 的代码.您无需指定确切的模块,在本例中为 models,因为任何继承自 Django 的 models.Model 的内容都会触发 class_prepared 信号一旦它被初始化,到目前为止,它仍然只是一个字符串。

只需提供应用和型号,如果在同一应用中,则仅提供型号名称。