Предполагается, что в приложении django будет следующий кенарий:
views.py:
def my_purchases(request):
if request.method == 'GET':
list_my_purchases = sorted(
chain(
Item_X_Licence.objects.filter(user=request.user, status=1),
Item_Y_Licence.objects.filter(user=request.user, status=1)
), key=attrgetter('paid_date'), reverse=True
)
paginator = Paginator(list_my_purchases, 20) # Show 20 per page
page = request.GET.get('page')
my_purchases = paginator.get_page(page)
user = request.user
args = {'user': user,
'my_purchases': my_purchases,
}
return render(request, 'App/my_purchases.html', args)
и следующие 2 модели (Item_X и Item_Y в основном совпадают, поэтому я буду показать это только для одного из них здесь)
models.py
class Item_X_Licence(models.Model):
id = models.UUIDField(primary_key=True, default=uuid.uuid4, editable=False)
user = models.ForeignKey(User, on_delete=models.CASCADE)
item = models.ForeignKey(Item_X, on_delete=models.CASCADE)
status = models.IntegerField(choices=PAYMENT_STATUS, default=0)
paid_date = models.DateTimeField(auto_now_add=True)
...
class Item_X(models.Model):
id = models.UUIDField(primary_key=True, default=uuid.uuid4, editable=False)
author = models.ForeignKey(User, on_delete=models.CASCADE)
title = models.CharField(max_length=25)
....
My Теперь возникает вопрос:
Как получить доступ к заголовку Item_X в шаблоне my_purchases. html? в настоящее время я могу получить только сам объект Item_X_Licence (id), но это в основном все ...
{% for my_purchases in my_purchases %}
<tr class="font-size-small">
<td>{{ my_purchases }}</td>
</tr>
{% endfor %}
В настоящее время list_my_purchases принимает Item_X_Licence, но я не знаю, как я могу получить Item_X и поля, такие как автор и название, так как я хочу отобразить их в моем шаблоне.
спасибо:)