Javascript 对于用户的所有图像,只有一个like按钮

Javascript 对于用户的所有图像,只有一个like按钮,javascript,python,html,django,Javascript,Python,Html,Django,我正在构建一个BlogApp,我正在尝试实现一个功能,用户可以在一个故事中上传多个图像,我为不同用户上传的每个故事构建一个like按钮。但当我按按钮进入时 喜欢的按钮是显示所有图片上传在一个故事,但我绑显示喜欢的按钮为一个故事的用户和另一个用户张贴的故事,然后显示另一个喜欢的按钮为另一个故事 models.py class Story(models.Model): user = models.ForeignKey(User,on_delete=models.CASCADE,default

我正在构建一个BlogApp,我正在尝试实现一个功能,
用户可以在一个故事中上传多个图像
,我为不同用户上传的每个故事构建一个like按钮。但当我按按钮进入时

喜欢的按钮是显示所有图片上传在一个故事,但我绑显示喜欢的按钮为一个故事的用户和另一个用户张贴的故事,然后显示另一个喜欢的按钮为另一个故事

models.py

class Story(models.Model):
    user = models.ForeignKey(User,on_delete=models.CASCADE,default='',null=True)
    file = models.ImageField(upload_to='posts',null=True)
    likes = models.ManyToManyField(User, related_name='story_like', blank=True)
views.py

def story_like(request, story_id):
    post = get_object_or_404(Story, pk=story_id)
    # Like
    if request.GET.get('submit') == 'like':
        if request.user in post.dislikes.all():
            post.dislikes.remove(request.user)
            post.likes.add(request.user)
            return JsonResponse({'action': 'undislike_and_like'})
        elif request.user in post.likes.all():
            post.likes.remove(request.user)
            return JsonResponse({'action': 'unlike'})
        else:
            post.likes.add(request.user)
            return JsonResponse({'action': 'like_only'})
template.html

            stories: [
                // {% for story in trending %}
                Story.buildTimelineItem(
                    '{{ story }}',
                    '{{ user.profile.file.url }}',
                    '{{ story.user }}',
                    '{{story.id}}',
                    timestamp(),
                    [
                        [
                            '{{story.id }}-1',
                            'file',
                            3,
                            
                            '{{ story.file.url }}',
               
                            '',

                        ],
                    ]
                ),
                // {% endfor %}
            ],
        });
    </script>
    {% for story in trending %}
    <br>
    <br>
                    <div class="card-footer">
                <form method="GET" class="likeForm d-inline" action="{% url 'mains:story_like' story.id %}"
                    data-pk="{{ story.id }}">

                        <span id="id_likes{{story.id}}">
                            {% if user in story.likes.all %}
                            <p style="color:#065FD4;display: inline">{{story.likes.count}}</p>
                            {% else %}
                            <p style="color:black;display: inline">{{story.likes.count}}</p>
                            {% endif %}
                        </span><button name='submit' type='submit' value="like"> Like </button>
                </form>
            </div>
    {% endfor %}
故事:[
//{%用于趋势分析中的故事%}
Story.buildTimelineItem(
“{{story}}}”,
“{user.profile.file.url}}”,
“{story.user}}”,
{{story.id}},
时间戳(),
[
[
“{story.id}}-1”,
“文件”,
3.
“{story.file.url}}”,
'',
],
]
),
//{%endfor%}
],
});
{%用于趋势分析中的故事%}


{%if用户在story.likes.all%}

{{{story.likes.count}

{%else%}

{{{story.likes.count}

{%endif%} 喜欢 {%endfor%}
在下图中,
user_1
user_2
发布了两个故事,它们都包含2-2个图像,但我尝试只为两个故事显示like按钮,但like按钮是为图像而不是为故事显示的

我不知道我该怎么做。我已经试过很多次了,但它仍然像按钮一样显示图片而不是故事

任何帮助都将不胜感激

先谢谢你