获取Django中filter的具体值
python 295
原文标题 :Get the specific value of filter in Django
我知道这很常见,但我想知道是否有任何方法可以将对象值转换为特定值,如 Integer ,过滤查询的输出是card_tbl object (1)
但我想获得 this 的具体值1
cardId = 1
card_tbl = card_tbl.objects.get(id=cardId)
print(card_tbl)
打印返回而不是具体值的例子。1
card_tbl object (1)
然后我的第二个问题是有什么办法可以像这样将对象查询到另一个表?
cardId = 1
card_tbls = card_tbl.objects.get(id=cardId)
cat1 = category1_tbl.objects.get(id=card_tbls)
Models.py
class main_tbl(models.Model):
category1 = models.ForeignKey(category1_tbl, models.DO_NOTHING, blank=True, null=True)
category2 = models.ForeignKey(category2_tbl, models.DO_NOTHING, blank=True, null=True)
title = models.CharField(max_length=200,blank=True, null=True)
description = models.CharField(max_length=1500,blank=True, null=True)
requested_by = models.CharField(max_length=200,blank=True, null=True)
path = models.CharField(max_length=1000,blank=True, null=True)
date_requested = models.DateField(null=True, blank=True)
status = models.IntegerField(max_length=60, default=0, null=True)
class category1_tbl(models.Model):
name = models.CharField(max_length=200,blank=True, null=True)
isactive = models.CharField(max_length=200,blank=True, null=True)
created = models.DateField(null=True, blank=True)
path = models.CharField(max_length=1000,blank=True, null=True)
modify = models.DateField(null=True, blank=True)
created_by = models.CharField(max_length=1000,blank=True, null=True)
class category2_tbl(models.Model):
category1 = models.ForeignKey(category1_tbl, models.DO_NOTHING, blank=True, null=True)
priority = models.ForeignKey(priority_tbl, models.DO_NOTHING, blank=True, null=True)
name = models.CharField(max_length=200,blank=True, null=True)
isactive = models.CharField(max_length=200,blank=True, null=True)
created = models.DateField(null=True, blank=True)
modify = models.DateField(null=True, blank=True)
created_by = models.CharField(max_length=200,blank=True, null=True)
提前致谢!
回复
我来回复-
rahul.m 评论
你可以使用django模型
__str__
https://docs.djangoproject.com/en/4.0/ref/models/instances/#str
每当您在对象上调用 str() 时都会调用 str() 方法。Django 在许多地方使用 str(obj)。最值得注意的是,在 Django 管理站点中显示一个对象,并在它显示一个模板时作为插入到模板中的值对象。因此,您应该始终从 str() 方法返回模型的漂亮、人类可读的表示。
尝试这样的事情
class YourModel(model.Models): your_fields = model.CharField() def __str__(self): return str(self.id)
2年前