【问题标题】:AttributeError: module 'django.db.models' has no attribute 'permalink'AttributeError:模块“django.db.models”没有属性“永久链接”
【发布时间】:2021-07-30 01:03:56
【问题描述】:

我收到此错误。我该如何解决?

**@models.permalink
AttributeError: module 'django.db.models' has no attribute 'permalink'**

【问题讨论】:

标签: python python-3.x django machine-learning django-rest-framework


【解决方案1】:

开始,@permalink decorator was marked deprecated [Django-doc],从 开始,@permalink decorator is removed [Django-doc]some discussion regarding this decorator 一直存在,最终 Django 开发者决定将其移除。

现在不是使用@permalink 装饰器来处理**.get_absolute_url() method [Django-doc],而是负责返回正确的值。

因此,这意味着如果您有一个使用装饰器的模型,您可以将其更改为:

class MyModel(models.Model):
    # …

    @models.permalink
    def get_absolute_url(self):
        return ('name-of-some-view', 'extra', 'parameters')

你必须使用reverse(…) function [Django-doc]:

from django.urls import reverse

class MyModel(models.Model):
    # …

    def get_absolute_url(self):
        return reverse('name-of-some-view', args=('extra', 'parameters'))

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2022-06-12
    • 2019-07-20
    • 2019-09-30
    • 2020-12-22
    • 1970-01-01
    相关资源
    最近更新 更多