如何通过template / html正确删除多对多属性?

时间:2016-04-25 21:36:35

标签: python html django django-tables2

我试图找出如何从ManyToMany usieng UserProfile中删除Django-tables个属性之一。

简单说明:

我的UserProfile扩展了UserUserProfile具有ManyToManyField属性Language,因此可能有5种语言。我创建了一个显示这些语言的表格。

我无法弄清楚如何让用户删除其中一种语言并刷新页面。

您可以将html添加到列中,然后通过{{ record }}引用行中的对象。我不知道该写些什么。我在考虑<a href="delete_language/{{record.id}}">Delete</a>,但我必须将其重定向到桌面,所以我无法在任何地方使用此视图。

你们知道该怎么办吗?

表格:

class MyLanguagesTable(tables.Table):
    verified = tables.TemplateColumn(
        '{% ifequal record.level.name "unknown" %} <a href="/tests/{{record.language.shortcut}}">Take a Test</a>'
        '{% else %}  Verified'
        '{% endifequal %}')
    delete = tables.TemplateColumn('<form action="" method="post">{% csrf_token %}'
                               '<button type="submit" name="action" value="delete">Delete</button>'
                               '</form>') # What to write here?
    level = tables.TemplateColumn('{{ record.level.get_name_display }}', verbose_name='Level')
    language = tables.TemplateColumn('{{record.language.name}}', verbose_name='Language')

    class Meta:
        model = LanguageLevel
        attrs = {'class': 'table table-striped table-bordered table-hover', 'width': '70%'}
        fields = ('language', 'level', 'verified')

0 个答案:

没有答案