Tôi gặp sự cố khi triển khai sơ đồ trang web trong ứng dụng của mình. Tôi đang sử dụng Virtualenv, django 1.4 và Python 2.7. Tôi sẽ đánh giá cao nếu bạn có thể giúp tôi giải quyết vấn đề này.Triển khai sơ đồ trang web ở Django
Đây là những gì tôi đã làm:
Trong urls.py tôi
from sitemap import JobPostSitemap sitemaps = { 'jobs': JobPostSitemap, } ... # Removed other urls url(r'^sitemap\.xml$', 'django.contrib.sitemaps.views.sitemap', {'sitemaps': sitemaps}),
Sau đó, trong tập tin sitemap.py tôi
from django.contrib.sitemaps import Sitemap from jobs.models import JobPost class JobPostSitemap(Sitemap): changefreq = "never" priority = 0.5 def items(self): return JobPost.objects.filter(approved=True) def lastmod(self, obj): return obj.pub_date
settings.py của tôi tệp như sau:
TEMPLATE_LOADERS = ( 'django.template.loaders.filesystem.Loader', 'django.template.loaders.app_directories.Loader', ) ... INSTALLED_APPS = ( 'django.contrib.auth', 'django.contrib.contenttypes', 'django.contrib.sessions', 'django.contrib.sites', 'django.contrib.messages', 'django.contrib.staticfiles', 'django.contrib.sitemaps', 'jobs', ) ...
Bây giờ khi tôi mở trình duyệt của tôi và điều hướng đến http://localhost:8000/sitemap.xml
, tôi nhận được lỗi sau:
ImportError at /sitemap.xml
No module named django.contrib.sitemaps
Request Method: GET
Request URL: http://localhost:8000/sitemap.xml
Django Version: 1.4.2
Exception Type: ImportError
Exception Value:
No module named django.contrib.sitemaps
Exception Location: /home/frank/Projects/python/django/techjobsea.com/baseline27/local/lib/python2.7/site-packages/Django-1.4.2-py2.7.egg/django/utils/importlib.py in import_module, line 35
Python Executable: /home/frank/Projects/python/django/techjobsea.com/baseline27/bin/python
Python Version: 2.7.3
tôi không thể tìm ra những gì tôi đã bỏ lỡ hoặc làm sai.
Bạn đã làm theo tất cả các bước cài đặt bắt buộc cho 'sơ đồ trang web 'chưa? Các bước bắt buộc [ở đây] (https://docs.djangoproject.com/en/dev/ref/contrib/sitemaps/) – doru
@doru Có. Tôi đã làm theo tất cả các bước. – Frankline
Bạn đã tìm thấy giải pháp chưa? –