Django-Python列表保存在数据库中如何访问模板?

时间:2018-04-28 19:54:52

标签: python django django-templates

我从API获取数据并保存在models.py中,作为学习Django的一部分。 我得到了数据,它保存在db中。

[u'RASH ERYTHEMATOUS', u'PAIN', u'FEELING HOT', u'PRURITUS', u'PAIN OF SKIN', u'SKIN IRRITATION', u'PARAESTHESIA', u'DERMATITIS CONTACT']

现在,当我尝试在模板中访问此数据时,我只获取此列表,而无法以用户友好的方式显示它。 我试过了:

{% for data in datalist.items %}
{{data}}
{% endfor %}

但是模板html中的结果输出将是

[u'RASH ERYTHEMATOUS', u'PAIN', u'FEELING HOT', u'PRURITUS', u'PAIN OF SKIN', u'SKIN IRRITATION', u'PARAESTHESIA', u'DERMATITIS CONTACT']

我需要像RASH ERYTHEMATOUS,PAIN,FEELING HOT .....

已编辑:更多详情

我从API获取了一些数据。 我将API json转换为json.loads(数据)并将其保存在models.py中 现在在API中,一个特定的子集在models.py中保存为[u'RASH ERYTHEMATOUS', u'PAIN', u'FEELING HOT', u'PRURITUS', u'PAIN OF SKIN', u'SKIN IRRITATION', u'PARAESTHESIA', u'DERMATITIS CONTACT'],因为json.loads()将json数据转换为python可读格式。

我已将其保存在models.py中 我可以在模板中检索这些数据,但它会以[u'RASH ERYTHEMATOUS', u'PAIN', u'FEELING HOT', u'PRURITUS', u'PAIN OF SKIN', u'SKIN IRRITATION', u'PARAESTHESIA', u'DERMATITIS CONTACT']的形式出现 现在我无法通过删除[u'

来显示它

更新: 没有任何效果。尝试了下面的代码,它做了神奇的事。

def reactiondata(self):
        return self.reactions.replace("[",'').replace("u",'').replace("'",'').replace(']','').split(',')

1 个答案:

答案 0 :(得分:0)

忽略不解释数据存储方式或显示模型的事实:

如果data变量仍然作为列表而不是单个对象打印,您可以尝试再次迭代该变量,如下所示:

{% for data in datalist.items %}
    {% for elem in data %}
        {{ elem }}
    {% endfor %}
{% endfor %}

或者您可以使用join template filter

{% for data in datalist.items %}
    {{ data|join:', ' }}
{% endfor %}