Django получение идентификатора для обхода списка

Я хочу преобразовать мой список в dict, чтобы иметь мой id, поэтому я пробую это в моих представлениях

def img2(request):

posts = Post.objects.all()
i=[]
for p in posts:
    print(p.id)
    i.append(p.id)
    #post={'id':str(p.id)}
#print(i)
'''def Convert(lst):
    res_dct = {str(lst[i]): lst[i] for i in range(0, len(lst), 1)}
    return res_dct   
# Driver code
d=Convert(i)'''
d = {str(i[k]): i[k] for k in range(0, len(i), 1)}
print(d)
for j in d:
    print(j)
return render(request, 'imgg.html', d)

Затем я хочу отобразить каждый идентификатор в html и вот мой html файл:

test

{% for n in d %}

{{n}}

{% endfor %}

Итак... ничего не произошло, и я не знаю, в чем проблема, помогите, пожалуйста, и большое спасибо. в общем у меня есть модель формы post и еще одна для images с foreignkey и я хочу отображать каждый пост с первым изображением uploded так что у меня есть моя база данных с post и images но я никогда не получаю первое изображение для отображения на главной странице тогда я пытаюсь сделать dict со всеми post_id с for я попытаюсь отобразить каждое изображение_post для ее поста если у вас есть другой метод я буду благодарен ^^

вот мой views.py:

from django.shortcuts import render, get_object_or_404
from django.db.models import Count
import posts

from .models import Post, PostImage

def blog_view(request):
    posts = Post.objects.all()
    return render(request, 'blog.html', {'posts':posts})

def detail_view(request, id):
    post = get_object_or_404(Post, id=id)
    photos = PostImage.objects.filter(post=post)
    return render(request, 'detail.html', {
        'post':post,
        'photos':photos
    })

def create_post_view(request):
    if request.method == 'POST':
        length = request.POST.get('length')
        title = request.POST.get('title')
        description = request.POST.get('description')

        post = Post.objects.create(
            title=title,
            description=description
        )
    
        for file_num in range(0, int(length)):
            PostImage.objects.create(
                post=post,
                images=request.FILES.get(f'images{file_num}')
            )

    return render(request, 'create-post.html')
def img(request,id):
    img=PostImage.objects.get(id=id)
    return render(request, 'img.html', {'img':img})
Вернуться на верх