【问题标题】:How to add faker data in django in place of foreign key field如何在 Django 中添加 Faker 数据代替外键字段
【发布时间】:2023-02-17 00:39:13
【问题描述】:

我所需要的是来自用户模型外键的 Product com 的用户字段我如何在此处添加 daker 数据它给了我这个错误

 Product.objects.create(
            Product_name=fake.name(),
            Product_desc = fake.text(),
            Price=fake.random_int(3000, 10000),
            user=1
        )
class User(models.Model):
    name = models.CharField(max_length=30)
    email = models.CharField(max_length=300, null=True, blank=True)
    password = models.IntegerField()
    def __str__(self):
        return self.name

class Product(models.Model):
    Product_name = models.CharField(max_length=30)
    Product_desc = models.CharField(max_length=300, null=True, blank=True)
    Price = models.IntegerField()
    user=models.ForeignKey(User, on_delete=models.CASCADE,related_name='set_user')

    def __str__(self):
        return self.Product_name

Here is the error

【问题讨论】:

  • 请将错误作为文本粘贴到您的问题中。

标签: python django django-rest-framework


【解决方案1】:

该错误是完全有道理的,您不能在创建实例时直接分配 user=1,它必须是 User 模型实例,因此:

Product.objects.create(
            Product_name=fake.name(),
            Product_desc = fake.text(),
            Price=fake.random_int(3000, 10000),
            user=get_object_or_404(User, id=1)
        )

【讨论】:

    猜你喜欢
    • 2011-09-23
    • 2019-08-10
    • 2011-08-08
    • 1970-01-01
    • 2021-07-13
    • 1970-01-01
    • 2018-08-31
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多