python - Django 待办事项检查按钮

标签 python django python-3.x

我对 Django 还很陌生,所以请使它对新手友好:D。 它是关于一个简单的待办事项列表。我希望每个项目都有三个按钮,用于删除、编辑或在本例中检查。 在下面的代码中,我想创建一个检查按钮,将 bool 值设置为 True。但不做任何事情,代码只是刷新侧面。命令中没有错误消息或更多信息。 那么你们能发现错误吗?

很高兴您的帮助。

HTML:

                        <form method="POST">
                            {% csrf_token %}
                            <button id="done" type="POST" action="{% url 'complete' do.id%}">
                                <i class="fas fa-check"></i></button>
                            <button id="edit"><i class="fas fa-edit"></i></button>
                            <button id="delete" action="#" method="POST"><i class="fas fa-trash"></i></button>
                            <a href="/todo/{{do.id}}">{{do.task_title}}</a>
                        </form>
                    </li>

网址:

    urlpatterns = [
        # match list,
        url(r'^$', views.index, name='index'),
        url(r'^add/$', views.addTodo, name='add'),

        url(r'^(?P<pk>[0-9]+)/complete/$', views.completeTodo, name='complete'),
..
]

查看:

def completeTodo(request, todo_id):

    if request.method =='POST':
        print('alive')
        todo = Task.objects.get(pk=todo_id)
        todo.complete = True
        todo.save()

    return redirect('index')

型号:

class Task(models.Model):
    task_title = models.CharField(max_length=50)
    task_explain = models.CharField(max_length=1500)
    complete = models.BooleanField(default=False)

    def get_absolute_url(self):
        return reverse('todo:detail', kwargs={'pk':self.pk})

    def __str__(self):
        return self.task_title

最佳答案

代码表示当 View 完成时重定向到索引,在本例中这可能看起来像是刷新。但是,您没有显示任何有关其完成状态的指示,因此没有任何变化。 您可以在某处添加 {{do.complete}} ,也可以使用管理界面来查看 complete 变量是否已设置。 more info here 你知道 View 中的代码是否运行了吗?

关于python - Django 待办事项检查按钮,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/48953848/

相关文章:

python - 字典数据可以随机分成测试集和训练集吗?

python - 在虚拟环境中安装 ipython

django-cache-machine 和 Redis

python - Base64解码直到没有Base64

python - 从 pyglet 还是 pygame 开始?

python - 从 Django 后保存信号生成线程是否可以?

sql - 当顺序很重要时查询成功尝试的分组

python - 如何从不同的文件导入Python函数(在Ubuntu中)

Python 3 - 如何在命令行窗口中创建打字效果

Python Django 错误 ModuleNotFoundError : No module named 'corsheaders'