gpt4 book ai didi

python - Django 1.6 : name 'sitemaps' is not defined

转载 作者:行者123 更新时间:2023-11-28 18:41:47 25 4
gpt4 key购买 nike

我试图在我的 Django 应用程序中实现站点地图,但出现以下错误。我正在使用 django 站点地图的框架。我不知道我做错了什么。

Traceback:
File "mysite/urls.py" in <module>
3. from sitemap import *
File "mysite/sitemap.py" in <module>
5. class Sitemap(sitemaps.Sitemap):

Exception Type: NameError at /
Exception Value: name 'sitemaps' is not defined

这是sitemap.py文件

from django.contrib.sitemaps import Sitemap
from meddy1.models import Doctor
import datetime

class Sitemap(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.datetime.now()

def location(self, obj):
return reverse(obj)


class DoctorSitemap(Sitemap):
changefreq = "Daily"
priority = 1

def items(self):
return Doctor.objects.all()

def lastmod(self, obj):
return obj.date

这是urls.py文件

from django.conf.urls import patterns, include, url
from django.contrib import admin
from sitemap import *

admin.autodiscover()

sitemaps = {
'pages':Sitemap(['homepage_imprint', 'homepage_archive']),
'doctor':DoctorSitemap,
'site':Sitemap(['name_of_url', 'name_of_url']),
}

urlpatterns = patterns('',
url(r'^', include('meddy1.urls')),
url(r'^', include('django.contrib.auth.urls')),
url(r'^admin/', include(admin.site.urls)),
url(r'^sitemap\.xml', include('django.contrib.sitemaps.views.sitemap'),{'sitemaps': sitemaps}),
)

最佳答案

您从模块导入了站点地图 ,而不是模块本身。删除模块名称:

class Sitemap(Sitemap):

这将只是工作,即使您正在替换此处导入的类。

或者,可以说更清楚您在做什么,调整模块的导入。更改导入自:

from django.contrib.sitemaps import Sitemap

到:

from django.contrib import sitemaps

关于python - Django 1.6 : name 'sitemaps' is not defined,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/25220561/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com