Справка по параметру Django URL View - PullRequest
0 голосов
/ 17 апреля 2011

У меня возникли проблемы при попытке передать строку из URL в представления.На моей странице есть страницы пользователей, и если вы перейдете на site.com/username, откроется страница этих пользователей.Но когда я пытаюсь идти, он говорит следующее: [недопустимый литерал для int () с базой 10: 'username'].

Вот мой код:

urls.py:

(r'^user/(?P<userName>[^/]+)/$', 'mischief_blog.mischief_app.views.user_view'),

views.py:

def user_view(request, userName):
    postList = userPost.objects.filter(author=userName)
    return render_to_response('user.html', {"user": user_name, "postList": postList}, context_instance=RequestContext(request))

1 Ответ

2 голосов
/ 17 апреля 2011

получить имя из URL:

(r'^user/(?P<userName>\w+)/$', 'mischief_blog.mischief_app.views.user_view'),

получить пользователя по имени, затем получить сообщения от пользователя: ( get_object_or_404 ) и ( Пользователь )

from django.shortcuts import get_object_or_404
from django.contrib.auth.models import User

def user_view(request, userName=None):
    user = get_object_or_404(User, username=userName)
    postList = userPost.objects.filter(author=user)
    return render_to_response('user.html', {"user": user, "postList": postList}, context_instance=RequestContext(request))
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...