Кнопка Удалить в шаблоне неактивна - PullRequest
1 голос
/ 12 июня 2019

enter code here У меня есть group_edit.html, который позволяет обновлять информацию о группе и удалять ее.

Upade (сохранить) работает отлично, но кнопка удаления ничего не делает.Спасибо за помощь: мой group_edit.html:

{% block page %}
    <form method="POST">
        {%  csrf_token %}
        <div class="col-lg-4 col-md-4 col-sm-4 content">
        {% bootstrap_form form %}
        <button type="submit" class="btn btn-pink pull-right">Save</button>
        <button type="reset" class="btn btn-warning pull-left"><a href="{%  url 'confirm-delete' group_id %}"></a>Delete</button>
        </div>
        <a href="{% url 'group-list' %}">Back to list</a>
    </form>
{% endblock %}

Мой шаблон verify_delete.html:

{%  block title %}Delete{%  endblock %}
{%  block heading %}<h3 class="page-header-center">Object Delete</h3> {%  endblock %}

{% block page %}

    <form method="post">{% csrf_token %}
        <p>Are you sure you want to delete "{{ obj }}"?</p>
        <input type="submit" value="Confirm" class="btn btn-warning">
        <a href="group_list.html" class="btn btn-default">Cancel</a>
    </form>

{% endblock %}

my views.py:

def group_edit(request, group_id):
    form = GroupForm(instance=Group.objects.get(group_id=group_id))

    if request.method == "POST":
        form = GroupForm(request.POST, instance=Group.objects.get(group_id=group_id))

        if form.is_valid():
            form.save()
            messages.success(request, 'Group saved')  # message for inform user of success - See messages in html file
            return redirect(group_list)

    return render(request, 'imports/group_edit.html', {
        "group_id": group_id,
        "form": form,
    })


def confirm_delete(request, group_id):
    obj = GroupForm(instance=Group.objects.get(group_id=group_id))
    if request.method == "POST":
        obj.delete()
        messages.success(request, 'Deleted')  # message for inform user of success - See messages in html file
        return render(request, 'imports/group_list.html')

    context = {
        "obj": obj
    }
    return render(request, "imports/confirm_delete.html", context)

и мои URL.py:

path('group_edit/<int:group_id>/', views.group_edit, name='group-edit'),
path('confirm_delete/<int:group_id>/', views.confirm_delete, name='confirm-delete'),

1 Ответ

1 голос
/ 12 июня 2019

В вашей ссылке интервал <a> пуст. Так что вместо

<a href="{%  url 'confirm-delete' group_id %}"><s></a></s>Delete

должно быть:

<a href="{%  url 'confirm-delete' group_id %}">Delete<b></a></b>

Возможно, лучше указать параметры {% url ... %} с именованными параметрами:

<a href="{%  url 'confirm-delete' <b>group_id=</b>group_id %}">Delete</a>
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...