2
我的模型由ForeignKey
組成,我使用generics.DetailView
在django視圖中呈現對象細節。在模板中獲取外鍵unicode值而不是其編號
爲MyModel
class MyModel(models.Model):
myField = models.ForeignKey(...)
def get_fields(self):
# called by the template
return [(field.verbose_name, field.value_to_string(self)) for field in type(self)._meta.fields]
MyView的
class Detail(DetailView):
model = MyModel
template_name = 'path/to/template.html'
def get_context_data(self, **kwargs):
context = super(Detail, self).get_context_data(**kwargs)
# do something
return context
而且MyTemplate的
{% for field, value in object.get_fields %}
<tr>
<th>{{ field }}</th>
<td>{{ value }}</td>
</tr>
{% endfor %}
現在,當模板呈現,我得到的是id
而非__unicode__
表示。 ChoiceField
也出現同樣的問題(我得到的是價值而不是其標籤)。
所以我的問題是,我如何獲得標籤或unicode表示而不是他們的實際值?
謝謝你殿下。 – AnnShress