2015-08-07 2 views
0

Я имеюHREF в Django для гостевых посетителей на страницу профиля пользователя

url(r'^profile/(?P<userid>\d+)', views.profile, name='profile'), 

в urls.py

И у меня есть

def profile(request, userid): 

Что я должен для HREF кнопки в для посетителей гостевой страницы можно просмотреть страницу профиля пользователя?

href="/accounts/profile/<userid>" 

или

href="{% url 'users:profile' user.id %}" 

Я не могу получить ни один из выше рабочего. Спасибо.

ответ

1

Я на самом деле столкнулся с этим вопросом несколько дней назад.

{% url 'users:profile' user.id as profile_link %} 
<a href="{{ profile_link }}">Profile</a> 

Также в будущем ваш пример не включает одинарные кавычки между пространством имен и именем URL-адреса. Вы должны иметь {% url 'users:namehere' %}, а не {% url users:namehere %}

+0

Спасибо, я отредактировал свой вопрос. Можете ли вы немного объяснить, почему это работает. В документе он просто говорит: «Если вы хотите получить URL-адрес без его отображения, вы можете использовать несколько другой вызов:« – Brian

+0

Нет причин использовать отдельный тег или сохранить его как переменную profile_link. Окончательный фрагмент OP должен работать нормально. –

+0

@ DanielRoseman Последний сниппет не работает, если пользователь не вошел в систему. – Brian

Смежные вопросы