2010-01-04 1 views
0

у меня есть эта ошибка:Джанго, усеченный неправильное DOUBLE значение:

Truncated incorrect DOUBLE value: 'asinox' 

эта ошибка приходят из моего SEO URL:

http://127.0.0.1:8000/user/asinox/2010/dec/30/1/este-pantalon-lo-compre-en-plaza-lama-una-aperidad/ 

"asinox" это имя пользователя (Новичок) и маршрутизация URL таким образом:

(r'^(?P<usuario>[-\w]+)/(?P<year>\d{4})/(?P<month>\w{3})/(?P<day>\d{2})/(?P<pk>\d+)/(?P<slug>[-\w]+)/$', shared), 

я не знаю, почему ошибка, но вот мое мнение:

def shared(request,usuario,year, month,day, pk, slug): 
    import datetime, time 
    date_stamp= time.strptime(year+month+day, "%Y%b%d") 
    pub_date = datetime.date(*date_stamp[:3]) 
    shared = get_object_or_404(Show,usuario=usuario, 
           pub_date__year=pub_date.year, 
           pub_date__month=pub_date.month, 
           pub_date__day=pub_date.day, 
           pk=pk, 
           slug=slug) 
    return render_to_response('site/account/shared.html', 
           {'shared': shared}, 
           context_instance=RequestContext(request)) 

Возможно, у вас есть идеи?

спасибо, извините, мой английский.

+0

Я думаю, проблема в [- \ w] + в urls.py, но я не уверен, что это регулярное выражение - это то, что вы хотите. – diegueus9

+0

У меня проблема: я звоню пользователю как «строка» ... и пользователь (id) является int. – Asinox

ответ

1

Это регулярное выражение не совпадает с URL-адресом. Ваш URL начинается с литеральной строки «пользователь», которая не находится в регулярном выражении; и регулярное выражение также ожидает целочисленное значение PK, которое URL-адрес не имеет.

+0

Мое предположение было бы каким-то образом включать из другого url.py, а 1 - это pk. –

+0

Этот ответ выглядит правильно. Он принимает буквальный «пользователь», чтобы быть вашим именем пользователя, а затем «asinox» передается ... фактически asinox не следует передавать в год, потому что год принимает только цифры. Это не похоже на то, что он должен совпадать. – mpen