2015-07-11 21 views
1

我卡到这个问题上的Django 1.6的Django 1.6:名称 '网站地图' 没有定义

这是我sitemaps.py

from django.contrib import sitemaps 
from django.core.urlresolvers import reverse 

from datetime import datetime 

class ContratalosSitemap(Sitemap): 

def __init__(self, names): 
    self.names = names 

def items(self): 
    return self.names 

def changefreq(self, obj): 
    return 'weekly' 

def lastmod(self, obj): 
    return datetime.now() 

这是我urls.py

from django.conf.urls import patterns, include, url 
from django.conf import settings 
from django.contrib import admin 
from django.contrib.sitemaps import Sitemap 
from sitemaps.py import ContratalosSitemap 

#Declaration for sitemaps url 

sitemaps = { 
    'pages' : ContratalosSitemap, 
} 

urlpatterns = patterns(
'apps.contratalos.views', 
url(r'c/(?P<slug>\.*[^ ]{1,128})?/', 'c', name='content'), 
url(r'^sitemap\.xml$', 'django.contrib.sitemaps.views.sitemap', {'sitemaps'$ 
) 

我我陷入了这个问题,可能是什么原因?

我跟着thisthis

,但没有运气尚未=/

任何想法吗?

在此先感谢!

回答

1

随着import sitemap你只输入模块的名字。所以如果你想在模块中使用某些东西,你也需要写sitemap.Sitemap

如果您编写from sitemap import Sitemap,您可以从模块中专门导入Sitemap类,并可以直接使用它,就像在代码中一样。

您也可以做from sitemap import *,它将导入模块中的所有定义。但不推荐,因为你可能只使用它的一些名字。

2

类定义更改为ContratalosSitemap(sitemaps.Sitemap):类,它应该工作

+0

非常感谢! – NeoVe

相关问题