Поскольку один Document
может иметь несколько DocVersion
, вам необходимо указать, какую версию вы хотите. Если это последний, то:
class DocumentDetailView(generic.DetailView):
model = Document
def get_context_data(self, **kwargs):
context = super(DocumentDetailView, self).get_context_data(**kwargs)
context['text'] = context['object'].docversion_set.last().text
return context
Я использую last()
, чтобы получить последний DocVersion
объект.
Если вы нужно весь текст из всех версий, затем:
class DocumentDetailView(generic.DetailView):
model = Document
def get_context_data(self, **kwargs):
context = super(DocumentDetailView, self).get_context_data(**kwargs)
context['texts'] = context['object'].docversion_set.all().values_list('text')
return context
Затем вам нужно перебрать texts
, чтобы отобразить его в шаблоне:
{% for text in texts %}
{{ text }}
{% endfor %}