проблема с URL-адресом в Django - PullRequest
       41

проблема с URL-адресом в Django

0 голосов
/ 09 сентября 2010

Я чувствую, что на это есть простой ответ, но я этого не знаю.

У меня есть приложение, которое использует базовый шаблон с html-ссылкой на домашнюю страницу пользователя "../home/", но как только вы попадете на сайт на 2 уровня, эта ссылка не сможет вернуться куровень домашней страницы.

Например, пользователь входит в систему и переходит на сайт www.yadda.com/home.Когда пользователь выбирает книгу (# 35) на домашней странице, я передаю аргумент идентификатора книги через URL-адрес и захожу на www.yadda.com/book/35/, отображая объект книги в шаблоне, который наследуется от base.html.,Однако, когда пользователь хочет вернуться на домашнюю страницу, оригинальная HTML-ссылка «../home/» (из base.html) помещает меня на www.yadda.com/book/home, а не на www.yadda.com./Главная.

Абсолютный путь в базе к домашней странице исправит это, но как новобранец django, я уверен, что есть более элегантное решение, с которым я незнаком.Заранее спасибо.

Пример кода:

urls.py

urlpatterns = patterns('booksite.views',
  (r'^schedule/(\d+)/$', 'viewBook'),
  (r'^home/$', 'home'), )

home.html

<a href="../book/{{s.id}}"> View This Book</a>

base.html

<a href="../index/">Home Page</a>

1 Ответ

4 голосов
/ 09 сентября 2010

В base.html не используйте ../index, используйте /index/.

Еще лучше, измените URL-адреса, используя тег {% url ... %}.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...