Клиент sape.ru на python: новый код
Сегодня у меня наконец-то дошли руки довести рефакторинг клиента sape.ru до конца. Нового он не стал делать ровным счётом ничего, код разросся в несколько файлов, тесты пока не готовы… Вот такой вот рефакторинг )
Зато я добавил много docstring’ов и спроектировал структуру клиента так, чтобы можно было в дальнейшем расширять его реализациями кэша в базе данных или где-то ещё. Я изменил шаблонные тэги sape_links и sape_links_list: теперь второй параметр включает или отлючает (по умолчанию) вывод информации для отладки, которая выглядит, примерно, так:
где cache_updated означает обновлялся ли кэш с сервера или был использован локальный файл. URI in cache - это количество страниц(вашего сайта) в кэше.
Теперь, если в settings.py не задана настройка SAPE_DOMAIN, то домен определяется автоматически по переменным HTTP_HOST и SERVER_NAME. Также в случае ошибки работы с файлами или чем-либо ещё код ошибки показывается вместо ссылок )
Теперь на очереди создание клиента для показа ссылок в контекстном режиме, ну и доведение текущего клиента для ума (надо тесты переписать заново, например).
Посмотреть код можно здесь: http://dja.pydev.ru/browser/dja/sape
Скачать здесь (mercurial репозиторий): http://hg.dja.pydev.ru
Зато я добавил много docstring’ов и спроектировал структуру клиента так, чтобы можно было в дальнейшем расширять его реализациями кэша в базе данных или где-то ещё. Я изменил шаблонные тэги sape_links и sape_links_list: теперь второй параметр включает или отлючает (по умолчанию) вывод информации для отладки, которая выглядит, примерно, так:
User
74947f25f25d6eb17e910005cbeaa8e6
Host
allsubmitter.org
Error
None
URI in cache
10
Cache updated
False
где cache_updated означает обновлялся ли кэш с сервера или был использован локальный файл. URI in cache - это количество страниц(вашего сайта) в кэше.
Теперь, если в settings.py не задана настройка SAPE_DOMAIN, то домен определяется автоматически по переменным HTTP_HOST и SERVER_NAME. Также в случае ошибки работы с файлами или чем-либо ещё код ошибки показывается вместо ссылок )
Теперь на очереди создание клиента для показа ссылок в контекстном режиме, ну и доведение текущего клиента для ума (надо тесты переписать заново, например).
Посмотреть код можно здесь: http://dja.pydev.ru/browser/dja/sape
Скачать здесь (mercurial репозиторий): http://hg.dja.pydev.ru



















Comments
Как хорошо, а то я уж думал, что придется самому такое писать :)
в про контекстные ссылки есть новости?
Да, видимо, не скоро будет готово )
а могли бы вы небольшую инструкцию оформить по настройке клиента?