如何完成待办事项清单任务?

时间:2020-06-16 17:14:01

标签: python html django

我刚刚开始学习django,我的第一个项目是ToDo应用列表(来自教程)。我想通过在update_task tamplet中添加一个复选框来在项目上添加更多功能,以便用户完成任务后可以完成操作。

这是update_task.html

<div class="center-column">

<!---h3>Update Task</h3--->

<div class="item-row">
    <h3>Update Task</h3>

    <form method="POST" action="">
        {% csrf_token %}

        {{form.title}}

        <input class="btn btn-primary" type="submit" name="Update Task">
        <a type="button" class="btn btn-secondary" href="{% url 'todo:index' %}">Cancel</a>


        <div class="item-row1">

        <h5 class="text-dark font-weight-bold">Is this task complete?</h5>



            <div class="regular-checkbox">

                {% if task.complete == True %}

                <input type="hidden" class="taskCheckbox" name="done" id="{{ task.id }}" value="on">
                <label for="{{ task.id }}" class="text-dark">Complete<strike>{{ task }}</strike></label>
                {% endif %}


             </div>

        </div>

这是index.html

<div class="center-column">

<form method="POST" action="/">
    {% csrf_token %}
    {{form.title}}
    <input class="btn btn-info" type="submit" name="Create task">
</form>

<div class="todo-index">    

{% for task in tasks %}
    <div class="item-row">
        <a class="btn btn-sm btn-info" href="{% url 'todo:update_task' task.id %}">Update</a>
        <a class="btn btn-sm btn-danger" href="{% url 'todo:delete' task.id %}">Delete</a>

        <span>{{task}}</span>


    </div>
{% endfor %}    

这是view.py

def index(request):
tasks = todo.objects.all()

form = todoForm()

if request.method == "POST":
    form = todoForm(request.POST)
    if form.is_valid():
        form.save()
    return redirect('/')

context = {'tasks':tasks, 'form':form}
return render(request, 'todo/index.html', context)

def updateTask(request, pk):
task = todo.objects.get(id=pk)

form = todoForm(instance=task)

if request.method == 'POST':
    form = todoForm(request.POST, instance=task)
    if form.is_valid():
        form.save()
    return redirect('/')    

context = {'form':form}

return render(request, 'todo/update_task.html', context)

def deleteTask(request, pk):
item = todo.objects.get(id=pk)

if request.method == 'POST':
    item.delete()
    return redirect('/')

context = {'item':item}
return render(request, 'todo/delete.html', context)

当我在localhost上完成任务时,该任务将无法完成

0 个答案:

没有答案
相关问题