Уведомления

Группа в Telegram: @pythonsu
  • Начало
  • » Django
  • » Проблема с генерацией sitemap и русскими ссылками [RSS Feed]

#1 Апрель 24, 2009 23:41:24

aliens
От:
Зарегистрирован: 2007-08-14
Сообщения: 135
Репутация: +  1  -
Профиль   Отправить e-mail  

Проблема с генерацией sitemap и русскими ссылками

Здравствуйте!
Столкнулся с такой проблемой при генерации sitemap.
Есть такая модель:

class GoodSeries(models.Model):
brand = models.ForeignKey(GoodBrand)
series_name = models.CharField(max_length=250, verbose_name=u"Название")
description = models.TextField(verbose_name=u"Описание", blank=True)
def get_absolute_url(self):
return reverse('group_goods', args=[self.series_name])
Поле series_name содержит текст на русском, и в ссылку выводится типа: http://wwwww.net/goods/Детские%20щетки
Такой же адрес для каждой GoodSeries надо получить в sitemap.

И такая “модель” для sitemap:
class SeriesMap(Sitemap):
changefreq = 'weekly'
priority = '0.8'

def items(self):
return GoodSeries.objects.all()
При таком использовании,я получаю ошибку:
Reverse for ‘group_goods’ with arguments ‘(u’\u0411\u0435\u043b\u0438\u0437\u043d\u0430',)' and keyword arguments ‘{}’ not found.
Хотя при переходе на сайте (по ссылке выше) все нормально находится.

Если в get_absolute_url() использовать просто return “/goods/%s” % self.series_name, то получаю в карте сайта заместо своего домена example.com

Понимаю, что ошибка с кодировками, но незнаю как решить. Подскажите пожалуйста



Офлайн

#2 Апрель 25, 2009 07:16:09

Александр Кошелев
От: Москва
Зарегистрирован: 2007-02-03
Сообщения: 1724
Репутация: +  2  -
Профиль   Отправить e-mail  

Проблема с генерацией sitemap и русскими ссылками

aliens
При таком использовании,я получаю ошибку:
Как в urls.py описан паттерн?
aliens
Если в get_absolute_url() использовать просто return “/goods/%s” % self.series_name, то получаю в карте сайта заместо своего домена example.com
Правильно. Вам надо поменять домен у объекта Site.



Офлайн

#3 Апрель 25, 2009 13:39:39

aliens
От:
Зарегистрирован: 2007-08-14
Сообщения: 135
Репутация: +  1  -
Профиль   Отправить e-mail  

Проблема с генерацией sitemap и русскими ссылками

Daevaorn
aliens написал:

При таком использовании,я получаю ошибку:

Как в urls.py описан паттерн?
aliens написал:

Если в get_absolute_url() использовать просто return “/goods/%s” % self.series_name, то получаю в карте сайта заместо своего домена example.com

Правильно. Вам надо поменять домен у объекта Site.
sitemaps = {
'series':SeriesMap,
}
urlpatterns = patterns('',
url(r'^all/$', views.all_series),
url(r'^(?P<series>[\w\s\"\,\.\-]+)/$', views.group_goods),
url(r'^company/(?P<company>[\w\s\"\,\.\-]+)/$', views.see_company),
url(r'^(?P<series>[\w\s\"\,\.\-]+)/page_(?P<page_num>\d+)/$', views.group_goods),

)

И в глобальном urls.py
(r'^sitemap.xml$', 'django.contrib.sitemaps.views.sitemap', {'sitemaps': sitemaps}),
А что такое объект Site? на оф сайте много всего, что прочитать не подскажете?



Офлайн

#4 Апрель 25, 2009 19:50:42

romankrv
От:
Зарегистрирован: 2008-05-23
Сообщения: 513
Репутация: +  0  -
Профиль   Отправить e-mail  

Офлайн

  • Начало
  • » Django
  • » Проблема с генерацией sitemap и русскими ссылками[RSS Feed]

Board footer

Модераторировать

Powered by DjangoBB

Lo-Fi Version