我的Model.py
class Banana(models.Model):
nohdt = models.IntegerField()
isi_indonesia = models.CharField(max_length=1000, blank=True, null=True)
class Meta:
managed = False
db_table = 'Banana'
def __str__(self):
return self.isi_indonesia
class Mango(models.Model):
nohdt = models.IntegerField()
isi_indonesia = models.CharField(max_length=1000, blank=True, null=True)
class Meta:
managed = False
db_table = 'Mango'
def __str__(self):
return self.isi_indonesia
我的View.py
list = []
data = []
banana = Banana.object.all()
mango = Mango.object.all()
list.append(banana)
list.append(mango)
for x in list: #looping django-models
for i in x: #looping list in models
tmp = {'no':x.nohdt, 'indo':x.isi_indonesia, 'table_name':???}
data.append(tmp)
return render(request, 'index.html', {'data':data})
我在model.py中有两个模型,在我的“ view.py”视图中,我使用LIST来存储数据。在存储之前,我循环列出模型,并循环模型的值。然后我使用tmp变量来保存“ nohdt”,“ isi_indonesia”和“模型名称”的信息。
如何返回型号名称?
答案 0 :(得分:1)
您可以通过类访问模型名称。我相信您应该在嵌套的i
中使用x
进行循环,而不是for i in x: #looping list in models
tmp = {'no': i.nohdt, 'indo': i.isi_indonesia, 'table_name': i.__class__.__name__}
data.append(tmp)
。
{{1}}
答案 1 :(得分:0)
对于x中的i:
tmp = {'no':i.nohdt,'indo':i.isi_indonesia,'table_name':i .___ str ____()
}
data.append(tmp)