Работа с биржами ссылок через библиотеку linkexchange

Меня попросили написать, как использовать библиотеку linkexchange для отображения сапоссылок. Я небуду теоретизировать особо — впрочем, как и всегда — и просто напишу голую техническую информацию.

Для работы с linxechange нам нужны две библиотеки. Сам linkexchange и phpserialize. Здесь я уже описывал способ, которым сейчас деплою сайты. Так вот в build/pipreq.txt у меня две строчки:

-e svn+http://svn.linkexchange.org.ua/LinkExchange/trunk#egg=LinkExchange
-e hg+http://dev.pocoo.org/hg/phpserialize-main#egg=phpserialize

Далее, идём в settings.py. Добавляем в TEMPLATE_CONTEXT_PROCESSORS строку 'linkexchange.django.context_processors.linkexchange'

Далее добавляем в settings.py настройки для работы с биржами ссылок:

LINKEXCHANGE_CLIENTS = [
    ('sape', [], {
        'user': '*******',
        'db_driver':  ('shelve', [], {
                       'filename': os.path.join(PROJECT_ROOT, 'var', 'sape.db')}), }),
    ('linkfeed', [], {
        'user': '*****',
        'db_driver': ('shelve', [], {
                      'filename': os.path.join(PROJECT_ROOT, 'var', 'linkfeed.db')}),
    }),
]

LINKEXCHANGE_FORMATTERS = [('list', [None], {})]

Что всё это значит, читайте на официальном сайте проекта. Я просто описываю быстрый старт :) Всё. Теперь у нас в контексте появляется переменная linkexchange_blocks — там ссылки :)

Выводить можно так:

<div class="advertize">
    {{ linkexchange_blocks.0|safe }}
</div>

Не забудьте создать директорию var и настроить права доступа к ней.

Add post to:   Delicious Reddit Slashdot Digg Technorati Google
Make comment

Pingbacks

10.09.2009 12:32 Установка кода Sape на Python | Sape News @sapenews.ru
Код от Miralab.ru Инструкция от web-brains.com

Comments

lorien, спасибо! А в комментах можешь продемонстрировать как эту библиотеку заставить работать с контекстными ссылками.

Нет, мне это неинтересно. Я с ними не работаю.

В INSTALLED_APPS надо добавлять не ‘linkexchange’, а ‘linkexchange.django’, и то, если используются контекстные ссылки, если используются только обычные ссылки, как в этом примере, то INSTALLED_APPS можно не трогать.

Народ жаждет узнать, как юзать контекстные ссылки :)

Пока вся документация по контекстным ссылкам в LinkExchange здесь: http://linkexchange.org.ua/ticket/3. Я добавил инструкции для Django.

Очень нужен код из этой статьи

http://web-brains.com/2008/03/03/sape-ru-client- refactoring/#c688

можете поделиться?

andrew-at-gisap.ru

Вопрос чайника: никак не могу понять, каким образом Sape определяет, установлен ли код или нет? По тегам <check code> в коде страницы? Я установил linkexchange и настроил, руководствуясь этой статьей и руководством с оффсайта этой либы, но чет нифига не пашет :) Можно ли как-то проверить, работает ли оно и если не пашет то на каком месте запинка?

Да, в теле страницы должно быть что-то типа <!—106694808—> Точно это значение можно узнать, если посмотреть базу данных, которая выдаётся для вашего сайта, это значение для несуществующего адреса __sape_new_url__

Можете также попробовать мою библиотеку для работы с sape, о ней я тоже писал где-то в этом блоге.

Required. 30 chars of fewer.

Required.

captcha image Please, enter symbols, which you see on the image