如何在 Django 模型中获取字段值?

How to get field value in django Model?

我有这个代码

class Book(models.Model):
    name = models.CharField(max_length=70)
    author = models.CharField(max_length=70)
    rating = models.IntegerField(default=None)
    volume = models.IntegerField(null=True, default=None)
    annotation = models.TextField(default=None)
    year = models.IntegerField()
    

我想从 class 中的字段中获取值。例如,名称为“Harry Potter”。我找不到方法。

我想,你必须显示名字,这就是你想在 class 中访问的原因。

您可以使用 __str__[python-doc] 来显示姓名。

试试下面的代码:


class Book(models.Model):
    name = models.CharField(max_length=70)
    author = models.CharField(max_length=70)
    rating = models.IntegerField(default=None)
    volume = models.IntegerField(null=True, default=None)
    annotation = models.TextField(default=None)
    year = models.IntegerField()
    
    def __str__(self):
        return f"{self.name}"

Remember: __str__ requires data of str type.