2012-02-16 75 views
3

我对python很陌生,试图在系统上运行一段Django代码,但我遇到了这个问题。ImportError:无法导入名称reverse_lazy

$ python manage.py runserver 
Running in development mode. 
Traceback (most recent call last): 
    File "manage.py", line 11, in <module> 
    import settings 
    File "/Users/Kinnovate/Desktop/fsdjango/platformsite/settings.py", line 321, in <module> 
    from django.core.urlresolvers import reverse_lazy 
ImportError: cannot import name reverse_lazy 

我正在使用python 2.7。我该如何解决?

回答

9

reverse_lazy比任何发布的Django版本更新。你确定你有一个Django的中继版本吗?

+0

做我需要得到的Django的另一个版本? – henghonglee 2012-02-16 01:46:58

+0

我不知道。你有什么版本?你也可以坚持你有的版本中可用的方法。 – 2012-02-16 01:47:47

+0

即时通讯使用 (1,3,1,'final',0) – henghonglee 2012-02-16 01:49:08

6

如果你坚持1.3一会儿,你可以沿着这些路线使用的东西:

try: 
    from django.core.urlresolvers import reverse_lazy 
except ImportError: 
    from django.core.urlresolvers import reverse 
    from django.utils.functional import lazy 
    reverse_lazy = lambda *args, **kwargs: lazy(reverse, str)(*args, **kwargs) 

更新: reverse_lazy处理可变ARGS

+1

这是一个很好的填充/回退1.3。我需要这个从基于类的视图定义success_url – 2013-04-28 19:35:09

+0

这可以用于自定义模板标签吗?我与Django 1.3应用程序有同样的问题,我需要反转dels_required装饰器的url。 – acrespo 2013-08-14 20:24:22

相关问题