0
我正在使用djangio-localeurl提供基于我的URL的区域设置切换。除了一个小小的打嗝之外,它工作得很好。使用django-localeurl时无法进行延迟反转
在我的一些基于类的视图中,我一直在使用懒惰的反向函数,否则我会收到关于缺少URL模式的错误。这是由于导入文件的顺序。一个解释为:
由于在解析 urls.py时评估了您的视图的装饰器,所以您有'鸡 - 鸡蛋'问题。由于未读取urls.py,因此无法使用reverse() 方法。
看来,Django的localeurl猴子补丁Django的内部reverse
函数。此更改正常工作,但我的lazy_reverse
函数给我的问题。现在,当我运行我的测试时,我在使用此功能的地方出现错误。这是我的lazy_reverse
功能代码:
from django.utils.functional import lazy
from django.core import urlresolvers
reverse_lazy = lambda name=None, *args : lazy(urlresolvers.reverse, str)(name, args=args)
我不断收到的错误是:
TypeError: Lazy object returned unexpected type.
我似乎明白是什么原因造成这一点。从我的INSTALLED_APPS
设置中删除localeurl
时,此问题似乎消失。
有关如何解决此问题的任何想法?
谢谢