【问题标题】:Access Users Model foreign Key访问用户模型外键
【发布时间】:2015-01-16 20:21:24
【问题描述】:

我正在编写我的第一个 Django 应用程序,我想利用内置的用户模型映射到我自己的自定义模型。

我的应用程序将管理用户 IT 设备。为此,我有一个名为 devices 的表。我希望每个设备都有一个映射到用户模型的外键(因此一个用户可以拥有多个设备)。

我的问题是,如何在我的模型中添加该映射。有什么?

Class Devices(model.Model):
 DeviceID = model.CharField(MaxLength=10)
 Owner = model.ForeignKey(<User??>)

提前致谢,

保罗

【问题讨论】:

    标签: python django


    【解决方案1】:
    class Device(model.Model):
        deviceID = model.CharField(MaxLength=10)
        owner = model.ForeignKey(User)
    

    在一个模型通过ForeignKey 与另一个模型关联后,您可以执行以下操作,如果您在名为dev 的变量中有一个Device 对象:

    dev.owner  # This return an User object, so you can access all user fields
    dev.owner.username
    dev.owner.email
    

    【讨论】:

    • 嗨 Liarez,感谢您的快速回复。我会玩一会然后回复你。另外,感谢您对编码风格的提醒,我会确保我遵循它们:)
    【解决方案2】:

    要访问 Django 的内置 User 模型,你需要导入这个:

     from django.contrib.auth.models import User
    

    假设您已导入模型:

    from django.db import models
    

    注意:它是 models 而不是 model。 Liarez 的回答中也存在这个错字。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2016-06-14
      • 1970-01-01
      • 1970-01-01
      • 2011-11-10
      • 1970-01-01
      • 2016-03-22
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多