【问题标题】:How to save two different users in a django model?如何在 django 模型中保存两个不同的用户?
【发布时间】:2015-12-04 21:42:36
【问题描述】:

我的案例与购买有关,即购买某物的顾客和出售该商品的卖家。

模型.py

from django.contrib.auth.models import User

class buy(models.Model):
    customer = models.ForeignKey(User)
    seller   = models.ForeignKey(User)

我知道上面的代码是错误的,我这样写是为了理解问题。

我采用 django.contrib 认证系统,为了避免为客户和卖家制作另一个认证系统,我希望 django 代码重用。

一个解决方案曾想过为卖家或客户创建另一个数据模型,但在我看来并且在登录时我使用的是django.contrib,那么我仍然会使用这个系统身份验证想知道有没有办法或者如果我最终创建另一个身份验证系统?

【问题讨论】:

  • 那么,您想将用户细分为客户或卖家吗?
  • 我不确定你在问什么。除了为这些外键添加related_name 之外,为了避免反向访问器冲突,这可以正常工作;你的实际问题是什么?
  • 我只是在猜测,如果你有一个 Product 模型有一个 user 字段,在这种情况下他是真正的卖家,你为什么不使用 seller = models.ForeignKey(Product, to_field='user')
  • @qasimalbaqali ,关于specialize用户,生成的模型是循环的,尝试在类Seller和类Customer中关联到User,但django与管理站点无关。
  • @qasimalbaqali。我会试试这个解决方案,谢谢。

标签: django django-models django-authentication


【解决方案1】:

我只是在猜测,如果你的 Product 模型有一个用户字段,在这种情况下他是实际的卖家,你为什么不使用 seller = models.ForeignKey(Product, to_field='user')

【讨论】:

    猜你喜欢
    • 2016-01-24
    • 1970-01-01
    • 2021-12-27
    • 2015-12-21
    • 1970-01-01
    • 2016-08-16
    • 1970-01-01
    • 2019-10-06
    • 1970-01-01
    相关资源
    最近更新 更多