【问题标题】:Redirect for UpdateView重定向更新视图
【发布时间】:2019-10-05 18:01:44
【问题描述】:

我在 Django 中有以下视图:

class LoanEditView(UpdateView):
    model = Loans
    form_class = LoanForm

    def get_success_url(self):
        return reverse('edit', kwargs={
            'pk': self.object.pk,
        })

我有一个可以调用更新视图的 url 路径:

path('edit/<int:pk>', LoanEditView.as_view(), name='edit')

但现在我的主页视图已损坏 - 我似乎无法从编辑视图重定向?

除此之外,我真的很想从我的 html 中的链接传递 pk,如下所示:

<a href="{% url 'edit' %}" class="btn btn-primary" pk=loan.pk>Edit</a>

向今天关注我的问题的任何人深表歉意 - 我已经在这个问题上待了十个小时,并且开始犯愚蠢的错误!

【问题讨论】:

    标签: django url-redirection django-urls


    【解决方案1】:

    您将pk 指定为&lt;a ... pk="loan.pk"&gt; 标记的参数,而不是{% url ... %} 模板标记的命名参数。无论如何,使用pk=loan.pk 没有任何意义,因为它不是模板变量(在{{ ... }} 之间),也不是在模板标签中(在{% ... %} 之间),因此这意味着您的HTML 字面上包含pk="loan.pk",所以不是loan的主键,而是一个字符串"loan.pk"

    您需要在`{% url ... %} 模板标签中指定主键pk,如:

    &lt;a href="{% url 'edit' <b>pk=loan.pk</b> %}" class="btn btn-primary" &gt;Edit&lt;/a&gt;

    【讨论】:

      猜你喜欢
      • 2014-06-28
      • 1970-01-01
      • 2015-03-29
      • 1970-01-01
      • 1970-01-01
      • 2015-11-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多