Как вывести одну запись пользователя Django?
models.py
from django.db import models
from users.models import User
class Post(models.Model):
file = models.FileField(upload_to='post_files/')
title = models.CharField(max_length=200, null=True, blank=True)
user = models.ForeignKey(User, on_delete=models.CASCADE, null=True, blank=True)
description = models.TextField(max_length=300, null=True, blank=True)
published = models.BooleanField(default=True)
created_at = models.DateTimeField(auto_now_add=True)
update_at = models.DateTimeField(auto_now=True)
def __str__(self):
if self.title:
return self.title
return f"Post id: {self.id}"
html
{% for post in object_list %}
<div class="card-body">
<div class="text-muted h7 mb-2"> <i class="fa fa-clock-o"></i>{{ post.created_at }}</div>
<a class="card-link" href="#">
<h5 class="card-title">{{ post.title }}</h5>
</a>
<p class="card-text">
{{ post.description }}
</p>
</div>
{% endfor %}
<div class="card-footer">
<a href="#" class="card-link"><i class="fa fa-gittip"></i> Like</a>
<a href="#" class="card-link"><i class="fa fa-comment"></i> Comment</a>
<a href="#" class="card-link"><i class="fa fa-mail-forward"></i> Share</a>
</div>
</div>
Выводятся все посты в один блок
Во views.py сделайте срез
object_list = Post.objects.filter(user=request.user)[:1]