Почему начальная загрузка может загружать фон для одного модала, но не другойJavascript

Форум по Javascript
Ответить
Anonymous
 Почему начальная загрузка может загружать фон для одного модала, но не другой

Сообщение Anonymous »

Итак, вот моя проблема, я создаю проект Django, основанный на учебных пособиях ECT, и я обнаружил, что для модалов отзывов пользователей - хорошей идеей. Я не хотел создавать множество различных кода для модалов, поэтому я решил выбрать общий модал, который я могу использовать для всех своих случаев. -Верд ">

Код: Выделить всё




{{ title }}



{{ message }}


{% if context_type == "account_deletion" %}

{% csrf_token %}

Enter Your Password to Confirm:


Delete Account

{% elif context_type == "item_deletion" %}
Are you sure you want to delete this item?
{% endif %}


{% if context_type == "item_deletion" %}

{% csrf_token %}
{{ submit_label }}
Cancel

{% endif %}




В этом проекте будет только два случая, либо пользователь хочет сделать что -то серьезное, например, удаление учетной записи, тогда им потребуется ввести свой пароль, чтобы подтвердить.
или просто для подтверждения удаления рекомендации или комментария. По какой -то причине модал работает просто отлично, когда я хочу удалить учетную запись, но если я хочу удалить рекомендацию из профиля пользователя, он не открывает модал и не бросает эту ошибку: < /p>
[! [Введите описание изображения здесь] [1]] [1] < /p>
Я решил , и после этого я предположил, что это может быть так, чтобы я получил к нему доступ, но снова не уверен. Я также попытался переместить модал, включив в нижнюю часть петли и за пределами цикла Рекомендация или способ настроить кнопку неправильно? но я не знаю. < /p>
Вот дополнительный код в любом случае для справки.

Код: Выделить всё

{% extends "base.html" %}
{% load static %}

{% block content %}
{{ profile.user.username }}'s Profile
Bio: {{ profile.bio }}
Location: {{ profile.location }}

{% if profile.avatar %}
[img]{{ profile.avatar.url }}[/img]
             alt="{{ profile.user.username }}'s avatar"
class="profile-avatar">
{% else %}
[img]{% static [/img]
             alt="Default avatar"
class="profile-avatar">
{% endif %}

{% if user.is_authenticated %}
{% if user == profile.user %}

[url={% url ]
Edit Profile
[/url]
[url={% url ]
Delete Account
[/url]
{% endif %}
{% endif %}


Recommendations
{% for recommendation in recommendations %}

{{ recommendation.content }}
{% if user == profile.user %}
[url={% url ]Edit[/url]

Delete


{% include "modal/modal.html" with modal_id="deleteRecommendationModal"|add:recommendation.id title="Confirm Recommendation Deletion" message="Are you sure you want to delete this recommendation?" context_type="item_deletion" action_url=recommendation.delete_url submit_class="btn-danger" submit_label="Delete Recommendation" %}
{% endif %}

{% endfor %}


{% include "modal/modal.html" with modal_id="deleteAccountModal" title="Confirm Account Deletion" message="This action is irreversible.  Please confirm." context_type="account_deletion" action_url=delete_account_url submit_class="btn-danger" submit_label="Delete Account" %}
{% endblock %}
< /code>
(my profile.html code) < /p>

def profile(request, username):
"""
Profile view to display user profile along with their recommendations.

Args:
request (HttpRequest): The request object to handle the request.
username (str): The username of the user whose profile is being viewed.

Returns:
HttpResponse: Renders the profile page with the user's profile and recommendations.
"""
user = get_object_or_404(User.objects.select_related('profile'), username=username)
recommendations = Recommendation.objects.filter(user=user)
delete_account_url = reverse("delete_account", kwargs={"username": username})
return render(request, "profiles/profile.html", {
"profile": user.profile,
"recommendations": recommendations,
"can_edit": request.user == user,
"delete_account_url": delete_account_url,
})
< /code>
(представление моего профиля) < /p>

def delete_recommendation(request, recommendation_id):
"""
Handles the deletion of an existing recommendation.

Args:
request: The HTTP request object containing user data.
recommendation_id (int): The ID of the recommendation to be deleted.

Returns:
Redirects to the user's profile page after the recommendation is deleted.

Description:
This view allows the logged-in user to delete their own recommendation.
If the user is not the owner of the recommendation, they are redirected
to their profile page.
"""
recommendation = get_object_or_404(models.Recommendation, id=recommendation_id)
#defensive programming stop user from navigating via url to delete others recommendation
if recommendation.user != request.user:
return render(request, "error/403.html", status=403)

recommendation.delete()
messages.success(request, "Recommendation deleted successfully!")
return redirect('profile', username=request.user.username)

< /code>
Удалить рекомендацию Просмотр < /p>

class Recommendation(models.Model):
"""Recommendation model

Args:
models (django model class): class from djangos model framework

Description:
recommendation model for the database, once created here get's migrated
to the database and is used for allowing users to see active recommendations
made
"""

def __str__(self):
"""String func

Returns:
formatted string for admin viewing
"""
return f"{self.title} | Recommended by {self.user}"

#title of the recommendation
title = models.CharField(max_length=100, unique=True)
# user, our fk linking back to the user who created it
user = models.ForeignKey(
User,
on_delete=models.CASCADE,
related_name="recommendations",
)
# optional description field for the recommendation
description = models.TextField(max_length=200, blank=True, null=True)
# we add lat/long cords for rec to put on map (invisible to user)
latitude = models.FloatField(blank=True, null=True)
longitude = models.FloatField(blank=True, null=True)
# address of place in question
address = models.CharField(max_length=255, unique=True)
# Many-to-many field for categories
categories = models.ManyToManyField(
Category,
related_name="recommendations",
blank=True,
)

def average_score(self):
"""
Average Score Func

Args:
self: (num): number to average

Description:
Method to calculate the votes, the votes are added by users and calculated here
when the object (recommendation) is displayed, the vote is tallied and then shown
"""
votes = self.votes.all()
if votes.count() == 0:
# No votes, return 0 as default
return 0
total_score = sum(vote.vote for vote in votes)
# Return the average score, rounded to 1 decimal place
return round(total_score / votes.count(), 1)

def delete_url(self):
return reverse("delete_recommendation", args=[self.id])

urlpatterns = [
path("recommendations/", recommendations, name="recommendations"),
path("add_recommendation/", add_recommendation, name="add_recommendation"),
path("edit_recommendation//", edit_recommendation, name="edit_recommendation"),
path("delete_recommendation//", delete_recommendation, name="delete_recommendation"),
]

< /code>
Наконец -то рекомендационная модель (потому что учебник заставил меня добавить назад) и представления рекомендаций < /p>
Любая помощь будет оценена
[1] : https://i.sstatic.net/pt9blgfg.png
 написан .html < /p>
From:

Delete


To:



Кнопка все еще не работает, но показывает модальный текст (и кнопки) и удаляет, когда работает, поэтому я думаю, что ошибка здесь


Подробнее здесь: https://stackoverflow.com/questions/794 ... -the-other
Ответить

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

Вернуться в «Javascript»