Форум программистов, компьютерный форум, киберфорум
Python: Web
Войти
Регистрация
Восстановить пароль
 
Рейтинг 4.60/5: Рейтинг темы: голосов - 5, средняя оценка - 4.60
1 / 1 / 1
Регистрация: 07.02.2013
Сообщений: 21
1

Как реализовать страницу отдельного поста в блоге?

24.10.2013, 13:46. Показов 908. Ответов 9
Метки нет (Все метки)

Привет всем! Подскажите пожалуйста как реализовать страницу details - страница отдельного поста. Есть главная страница index на которой выводится список постов:
Python
1
2
3
4
5
6
7
8
9
10
{% block content %}
{% for x in posts %}
 <h2><a href="{{ x.get_absolute_url }}">{{ x.title }}</a></h2>
<p>{{ x.content }}</p>
<p>{{ x.datetime|date:"D d M Y" }}</p>
<hr />
{% empty %}
    <p>Нет новостей</p>
    {% endfor %}
{% endblock %}
в view.py написано:
Python
1
2
3
def index(request):
    posts = Post.objects.all()
    return render_to_response('index.html', {'posts': posts})
функция get_absolute_url() реализованная в model.py:
Python
1
2
def get_absolute_url(self):
        return "/Blog/%i/" % self.id
как теперь указать в view,py что необходимо перейти на страницу details.html после нажатии на ссылку
Python
1
<a href="{{ x.get_absolute_url }}">{{ x.title }}</a>
?
0
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
24.10.2013, 13:46
Ответы с готовыми решениями:

Не выводиться текст отдельного поста в Wordpress
Здравствуйте! Срочно нужна помощь! На сайте ageshin.lv На странице любого отдельного поста не...

Как добавить свою настройку на страницу редактирования поста?
Подскажите как добавить свою настройку на страницу редактирования поста? Какие хуки?

Как реализовать своё меню на блоге ?
Доброе утро ! Ребят подскажите, как установить меню себе на блог WordPress ( к примеру вот это меню...

Как можно реализовать запрет чтения и записи для отдельного (специально заданного) USB-флеш-накопителя?
Приветствую всех! После долгих поисков в интернете возник очень интересный вопрос: Как можно...

9
140 / 140 / 38
Регистрация: 20.02.2012
Сообщений: 597
24.10.2013, 17:22 2
пишешь отдельую вьюху.

Python
1
2
3
def view_post(request, post_id):
    # тут получаешь пост и рендериш страницку
    ...
также не забудь в урлах прописать соответствие вьюхи и шаблона урла.
1
1 / 1 / 1
Регистрация: 07.02.2013
Сообщений: 21
28.10.2013, 18:29  [ТС] 3
ilnurgi, написал в views.py:
Python
1
2
def view_post(request, post_id):
    return render_to_response('detail.html')
А как вызвать этот метод из страницы index.html чтобы отобразилась detail.html?
0
5 / 5 / 1
Регистрация: 05.11.2011
Сообщений: 17
28.10.2013, 18:46 4
Если я правильно понял, то нужно добавить в URLconf
Python
1
(r'^/Blog/(\d+)/$', 'Blog.views.view_post')
1
1 / 1 / 1
Регистрация: 07.02.2013
Сообщений: 21
28.10.2013, 18:51  [ТС] 5
спасибо! Еще такой вопрос: почему на страницу index работает подключенный css а на detail не работает, хотя подключение на страницах одинаковое:
HTML5
1
2
3
4
    <meta charset="utf-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <link href="../static/bootstrap.css" rel="stylesheet">
    <link href="../static/jumbotron-narrow.css" rel="stylesheet">
0
1 / 1 / 1
Регистрация: 07.02.2013
Сообщений: 21
30.10.2013, 18:19  [ТС] 6
нашел решение нужно было на странице detail.html изменить путь к файлам css:
HTML5
1
2
<link href="../../static/bootstrap.css" rel="stylesheet">
    <link href="../../static/jumbotron-narrow.css" rel="stylesheet">
0
5 / 5 / 1
Регистрация: 05.11.2011
Сообщений: 17
31.10.2013, 05:13 7
Это потому что detail.html лежит в другой директории.
И вообще, у вас какие-то странные ссылки
Неужели вот так не будет работать?
HTML5
1
<link href="/static/bootstrap.css" rel="stylesheet">
0
140 / 140 / 38
Регистрация: 20.02.2012
Сообщений: 597
31.10.2013, 07:13 8
NetNet,
а как вы статику настраивали?
0
1 / 1 / 1
Регистрация: 07.02.2013
Сообщений: 21
31.10.2013, 10:03  [ТС] 9
Nuqlear, да, Вы правы. По вашему примеру работает на всех страницах. ilnurgi, статику никак не настраивал, просто создал папку static и покидал туда стили )
0
620 / 474 / 58
Регистрация: 18.09.2012
Сообщений: 1,688
31.10.2013, 21:15 10
NetNet, а пути прописывали в urls?
0
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
31.10.2013, 21:15

Заказываю контрольные, курсовые, дипломные работы и диссертации здесь.

Вывести первую страницу поста
Подскажите, выводит последнюю картинку поста. А нужно первую. Код на странице. &lt;?php if (...

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

Как реализовать страницу
Как реализовать такую страницу, чтобы при наведении мышью было так? http://www.segun24.ru

Не знаю как реализовать 2-ю страницу TTabbedNoteBook
Не знаю как реализовать 2-ю страницу TTabbedNoteBook. Компонент Ttimer должен управлять...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
10
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2021, vBulletin Solutions, Inc.