首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何在django模型中返回表名

如何在django模型中返回表名
EN

Stack Overflow用户
提问于 2018-10-14 07:05:14
回答 2查看 692关注 0票数 0

我的Model.py

代码语言:javascript
复制
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

代码语言:javascript
复制
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_印度尼西亚‘和’模型名‘的信息。

如何返回型号的名称?

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2018-10-14 07:56:15

您可以通过类访问模型名。我认为您应该在嵌套的for循环中使用i循环,而不是使用x循环。

代码语言:javascript
复制
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
EN

Stack Overflow用户

发布于 2018-10-14 16:53:19

因为我在x:

代码语言:javascript
复制
 tmp = {'no': i.nohdt, 'indo': i.isi\_indonesia, 'table\_name': i.\_\_\_str\_\_\_\_()

} data.append(tmp)

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/52800308

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档