【问题标题】:OneToOneField in DjangoDjango 中的 OneToOneField
【发布时间】:2020-08-13 06:33:28
【问题描述】:

我写了一个视图,让我可以在数据库中存储一些数据:

def save(request, product_id):
    product = Product.objects.get(pk=product_id)
    user = request.user
    p = SavedProduct(username= user, product_off_id=product.off_id)
    p.save()

这是我的模型:

class Product(models.Model):
    name = models.CharField(max_length=2000)        
    off_id = models.BigIntegerField()      

class SavedProduct(models.Model):
    username = models.CharField(max_length=2000)
    product_off_id = models.BigIntegerField()

它完成了这项工作,但我正在努力实现 OneToOneFieldusernameproduct_off_id

我知道product_off_id = models.BigIntegerField() 应该是product_off_id =models.OneToOneField(Product),但我应该为product_off_id 字段传入p=SavedProduct() 什么?

【问题讨论】:

    标签: django model one-to-one


    【解决方案1】:

    如果你想用OneToOneField 来做,那就是:

    p = SavedProduct(username= user, product_off_id=product)
    

    【讨论】:

    • 工作完美,但我的用户名上的 OneToOneField 呢?
    • username = models.OneToOneField('Product', to_field='name')
    猜你喜欢
    • 2015-03-06
    • 1970-01-01
    • 1970-01-01
    • 2014-04-30
    • 2013-02-16
    • 1970-01-01
    • 2014-09-15
    • 2013-04-20
    • 2015-08-15
    相关资源
    最近更新 更多