Запрос подтверждения удаления записи
Добрый день!
Пытаюсь на django реализовать удаление записи, а диалог подтверждение удаления хочу вынести в модальное окно.
Файл views.py:
- class DeleteObject(LoginRequiredMixin, DeleteView):
- model = Object
- template_name = 'todoList/home.html'
- def get(self, request, *args, **kwargs):
- obj = get_object_or_404(Object, id=self.kwargs.get('id'))
- # Check for uncompleted tasks
- uncompleted = Data.objects.filter(objects=obj).filter(state=False).count()
- if uncompleted == 0:
- obj.delete()
- return redirect('home')
То есть реализовал удаление сразу при клике на ссылку удаления записи.
Пытаюсь в шаблоне (*.html) сделать так:
- <div class="dropdown">
- <div class="circle dropdown-toggle ml-2" data-toggle="dropdown"></div>
- <div class="dropdown-menu">
- <a class="dropdown-item" href="{% url 'obj_update' object.id %}">Edit</a>
- <a class="dropdown-item" data-toggle="modal" data-target="#taskModal" OnClick="getId('{{ object.id }}')">Delete</a>
- <script language="javascript">
- function getId(objID) {
- link = "{% url 'del_obj' " + objID + " %}"; // Error
- objdel.setAttribute('href', link);
- };
- </script>
- </div>
- </div>
- <div id="taskModal" class="modal fade">
- <div class="modal-dialog">
- <div class="modal-content">
- <div class="modal-header">
- <h4 class="modal-title">Confirm deletion</h4>
- </div>
- <div class="modal-body">Are your sure you want to delete?</div>
- <div class="modal-footer">
- <a id="objdel" class="btn btn-danger" type="button" data-dismiss="modal" href="">Delete</a>
- <a class="btn btn-secondary" type="button" data-dismiss="modal">Cancel</a>
- </div>
- </div>
- </div>
- </div>
Пытаюсь в атрибут href="" объекта id="objdel" впихнуть "{% url 'del_obj' " + objID + " %}", чтобы при клике в диалоге на "Delete" удалялась запись.
В строке "link = "{% url 'del_obj' " + objID + " %}";" ругается на то что objID не подходит в качестве параметра для "del_obj".
Возможно есть способ реализовать это по другому или я не правильно передаю ссылку?
2
100
Do you like it? Share on social networks!
- Last comments
- AKApril 1, 2025, 11:41 a.m.Добрый день. В данный момент работаю над проектом, где необходимо выводить звук из программы в определенное аудиоустройство (колонки, наушники, виртуальный кабель и т.д). Пишу на Qt5.12.12 поско…
- VPMarch 9, 2025, 4:14 p.m.Здравствуйте! Я устанавливал Qt6 из исходников а также Qt Creator по отдельности. Все компоненты, связанные с разработкой для Android, установлены. Кроме одного... Когда пытаюсь скомпилиров…
- ИМNov. 22, 2024, 9:51 p.m.Добрый вечер Евгений! Я сделал себе авторизацию аналогичную вашей, все работает, кроме возврата к предидущей странице. Редеректит всегда на главную, хотя в логах сервера вижу запросы на правильн…
- Now discuss on the forum
- МАApril 1, 2025, 4:21 p.m.0ff763fe-4e50-455d-a3a6-5699c243b1a5_17_44_22_1.xml
- fFeb. 15, 2025, 1:46 p.m.Подскажите, пожалуйста! Как данный класс можно дополнить, чтобы созданные объекты можно было перемещать мышкой по сцене?
- Не запускается компьютер (точнее работает блок , но сам монитор вообще жесть)В общем я ничего с интернета не скачивала в последнее время. На компе никаких левых пр…
- Вопрос решен. Узнать QModelIndex элемента на который мы перетаскиваем другой элемент, можно с помощью функции indexAt(event->position().toPoint()) представления QTreeViev вызываемой в переопр…
Пробовал так:
Ошибка:
Добрый день.
Вот это работать и не будет
Давайте разберёмся, ка работает {% url 'del_obj' %}
Начнём с того, что это шаблонный тег, а значит он должен быть обработан на сервере прежде, чем будет отослан клиенту в веб-браузер.
А JavaScript в данном случае может выполниться только на стороне клиента в данном случае.
Значит, чтобы тег отработал, ему нужна адекватная информация, без конкатенаций со стороны JavaScript, посольку это будет совсем другой шаг, когда уже всё отрендерено.
В сухом остатке это может выглядеть только так
то есть, я бы написал так
Спасибо!
Я по началу так и хотел сделать но в строке:
Сбила подсветка синтаксиса и кавычки, выглядит как буд-то del_obj стоит вне кавычек. Засомневался, что не будет работать.
Странно, но поссылке переходить отказывается, хотя и показывает, что она там есть.
Для работы пришлось немного поменять:
Без пинка со стороны JavaScript по ссылке переходить отказывается.