Django - 在离开网站

时间:2018-05-06 20:29:10

标签: python django

我对Python开发和特定项目的工作都很陌生。我有一份人们可以“声称”的“行动项目”清单。所以我创建了一个模型,其中包含有关操作项的所有信息,包括名为is_claimed的BooleanField,默认为False。

我打印出表中的所有操作项,其中最后一列是指向外部站点的链接(在我的模型中也是一个URLField)。

我希望最后一个表格单元格是这样的:

<a href="{{ action_item.url }}">Claim and Complete Action Item</a>

当有人点击该网址时,我需要更新数据库以显示is_claimed=True

任何想法或帮助?对不起,如果这个问题太简单了。学到很多但需要一些专家的帮助!

由于

1 个答案:

答案 0 :(得分:1)

让您的链接标记指向此视图,该视图会在模型上设置is_claimed,然后重定向到外部网址。

from django.shortcuts import render, redirect
from .models import ActionItem


def link_counter(request, action_id):
    # Retrieve the clicked item
    action_item = ActionItem.objects.get(pk=action_id)
    # Set 'is_claimed' to true
    action_item.is_claimed = True
    action_item.save()

    # Redirect the user, to the url associated with the 'action_item'
    return redirect(action_item.url)

您的锚标记将如下所示:

<a href="{% url 'link_counter' action_item.id %}">Claim and Complete Action Item</a>