[00:28:16] : piranha has set the subject to: Python.SU | Код постить в dumpz.org | Логи: http://xa4a.org.ua/logs/pythonua@conference.jabber.ru/ | Хочешь задать вопрос - просто *задай* его! | Разрешено не более 2 тупых вопросов в день от человека
[00:41:06] A2K: привед
[00:41:09] A2K: у меня вопрос
[00:41:18] A2K: имеется QT форма, в ней lineEdit
[00:41:41] A2K: получаю из lineEdit текст, отправляю его в жаббер через xmpppy
[00:41:53] A2K: если там был русский текст, получаю: UnicodeEncodeError: 'ascii' codec can't encode characters in position 0-11: ordinal not in range(128)
[00:41:58] A2K: как с этим бороться?
[00:49:38] mishok13: help(str.decode), help(str.encode), help(unicode)
[00:52:26] A2K: спасибо
[01:22:36] : This room is not anonymous
[01:22:37] : piranha has set the subject to: Python.SU | Код постить в dumpz.org | Логи: http://xa4a.org.ua/logs/pythonua@conference.jabber.ru/ | Хочешь задать вопрос - просто *задай* его! | Разрешено не более 2 тупых вопросов в день от человека
[01:52:52] : This room is not anonymous
[01:52:52] : piranha has set the subject to: Python.SU | Код постить в dumpz.org | Логи: http://xa4a.org.ua/logs/pythonua@conference.jabber.ru/ | Хочешь задать вопрос - просто *задай* его! | Разрешено не более 2 тупых вопросов в день от человека
[02:22:57] : This room is not anonymous
[02:22:58] : piranha has set the subject to: Python.SU | Код постить в dumpz.org | Логи: http://xa4a.org.ua/logs/pythonua@conference.jabber.ru/ | Хочешь задать вопрос - просто *задай* его! | Разрешено не более 2 тупых вопросов в день от человека
[02:53:06] : This room is not anonymous
[02:53:06] : piranha has set the subject to: Python.SU | Код постить в dumpz.org | Логи: http://xa4a.org.ua/logs/pythonua@conference.jabber.ru/ | Хочешь задать вопрос - просто *задай* его! | Разрешено не более 2 тупых вопросов в день от человека
[03:23:17] : This room is not anonymous
[03:23:17] : piranha has set the subject to: Python.SU | Код постить в dumpz.org | Логи: http://xa4a.org.ua/logs/pythonua@conference.jabber.ru/ | Хочешь задать вопрос - просто *задай* его! | Разрешено не более 2 тупых вопросов в день от человека
[03:53:26] : This room is not anonymous
[03:53:26] : piranha has set the subject to: Python.SU | Код постить в dumpz.org | Логи: http://xa4a.org.ua/logs/pythonua@conference.jabber.ru/ | Хочешь задать вопрос - просто *задай* его! | Разрешено не более 2 тупых вопросов в день от человека
[04:23:37] : This room is not anonymous
[04:23:37] : piranha has set the subject to: Python.SU | Код постить в dumpz.org | Логи: http://xa4a.org.ua/logs/pythonua@conference.jabber.ru/ | Хочешь задать вопрос - просто *задай* его! | Разрешено не более 2 тупых вопросов в день от человека
[04:53:46] : This room is not anonymous
[04:53:46] : piranha has set the subject to: Python.SU | Код постить в dumpz.org | Логи: http://xa4a.org.ua/logs/pythonua@conference.jabber.ru/ | Хочешь задать вопрос - просто *задай* его! | Разрешено не более 2 тупых вопросов в день от человека
[05:23:56] : This room is not anonymous
[05:23:56] : piranha has set the subject to: Python.SU | Код постить в dumpz.org | Логи: http://xa4a.org.ua/logs/pythonua@conference.jabber.ru/ | Хочешь задать вопрос - просто *задай* его! | Разрешено не более 2 тупых вопросов в день от человека
[05:54:06] : This room is not anonymous
[05:54:06] : piranha has set the subject to: Python.SU | Код постить в dumpz.org | Логи: http://xa4a.org.ua/logs/pythonua@conference.jabber.ru/ | Хочешь задать вопрос - просто *задай* его! | Разрешено не более 2 тупых вопросов в день от человека
[06:24:16] : This room is not anonymous
[06:24:16] : piranha has set the subject to: Python.SU | Код постить в dumpz.org | Логи: http://xa4a.org.ua/logs/pythonua@conference.jabber.ru/ | Хочешь задать вопрос - просто *задай* его! | Разрешено не более 2 тупых вопросов в день от человека
[06:54:26] : This room is not anonymous
[06:54:26] : piranha has set the subject to: Python.SU | Код постить в dumpz.org | Логи: http://xa4a.org.ua/logs/pythonua@conference.jabber.ru/ | Хочешь задать вопрос - просто *задай* его! | Разрешено не более 2 тупых вопросов в день от человека
[07:24:36] : This room is not anonymous
[07:24:36] : piranha has set the subject to: Python.SU | Код постить в dumpz.org | Логи: http://xa4a.org.ua/logs/pythonua@conference.jabber.ru/ | Хочешь задать вопрос - просто *задай* его! | Разрешено не более 2 тупых вопросов в день от человека
[07:54:46] : This room is not anonymous
[07:54:46] : piranha has set the subject to: Python.SU | Код постить в dumpz.org | Логи: http://xa4a.org.ua/logs/pythonua@conference.jabber.ru/ | Хочешь задать вопрос - просто *задай* его! | Разрешено не более 2 тупых вопросов в день от человека
[08:24:56] : This room is not anonymous
[08:24:56] : piranha has set the subject to: Python.SU | Код постить в dumpz.org | Логи: http://xa4a.org.ua/logs/pythonua@conference.jabber.ru/ | Хочешь задать вопрос - просто *задай* его! | Разрешено не более 2 тупых вопросов в день от человека
[08:55:06] : This room is not anonymous
[08:55:06] : piranha has set the subject to: Python.SU | Код постить в dumpz.org | Логи: http://xa4a.org.ua/logs/pythonua@conference.jabber.ru/ | Хочешь задать вопрос - просто *задай* его! | Разрешено не более 2 тупых вопросов в день от человека
[09:12:32] lllamah711: доброе утро!
[09:12:58] lllamah711: подскажите где можно добыть исходники сайтов написанных на джанго?
[09:18:46] tek: lllamah711: можно гуглом, inurl:"models.py" trunk
[09:18:52] Лис: утра
[09:19:07] tek: %)
[09:19:37] lllamah711: мерси
[09:24:28] xa4a: угу, а ещё google.com/codesearch
[09:25:24] Лис: http://www.securitylab.ru/news/355648.php
[09:25:29] Лис: каменты почитайте
[09:55:36] : This room is not anonymous
[09:55:36] : piranha has set the subject to: Python.SU | Код постить в dumpz.org | Логи: http://xa4a.org.ua/logs/pythonua@conference.jabber.ru/ | Хочешь задать вопрос - просто *задай* его! | Разрешено не более 2 тупых вопросов в день от человека
[10:25:46] : This room is not anonymous
[10:25:46] : piranha has set the subject to: Python.SU | Код постить в dumpz.org | Логи: http://xa4a.org.ua/logs/pythonua@conference.jabber.ru/ | Хочешь задать вопрос - просто *задай* его! | Разрешено не более 2 тупых вопросов в день от человека
[10:35:49] mishok13: http://www.explosm.net/db/files/Comics/Kris/flavored.png
[10:45:30] slav0nic: млять от жеж)) на форуме яндекса не работает поиск))
[10:49:49] tek: я только сейчас узнал что у яндекса есть форум =)
[10:59:32] slav0nic: я если честно тож
[11:11:05] _lorien: что под linux есть кроме dia, чтобы UML рисовать?
[11:12:37] Лис: _lorien, pybb собрался рисовать?
[11:12:57] Лис: скорее всего ты этого не хочешь (c)
:D
[11:13:23] mishok13: _lorien, bouml
[11:13:30] _lorien: нет, не pybb, мне надо не убить моск хитросплетением зависимостей объектов в CRM системе
[11:13:47] Лис: _lorien, на джанге?
[11:13:53] _lorien: на джанге
[11:14:04] Лис: джангу можно научить рисовать картинку с моделями и связями между ними
[11:14:36] Лис: в django-command-extensions этот кусок есть
[11:14:40] Лис: они его правда откуда то выдрали
[11:14:49] Лис: не помню откуда
[11:14:54] Лис: но короче можно
[11:15:23] _lorien: Я *не могу* нарисовать модели т.к. там слжные связи я ещё даже в голове их не уложил, не знаю, то ли прямые зависимости делать, то ли ACL велосипедить и т.д.
[11:15:51] _lorien: т.е. написать не могу ;-) А вот нарисовать на одном листе как раз пытаюсь
[11:16:13] Лис: дак нах тебе UML тогда? трата времени
[11:16:23] Лис: бери лист бумаги и карандаш
[11:16:25] Лис: :)
[11:17:01] _lorien: ага, а потом я фотиком сфотаю и пошлю партнёрам: welcome в каменный век :-)
[11:17:14] mishok13: _lorien, каким партнерам?
[11:17:23] Лис: аа, Ынтырпрайз
[11:17:26] Лис: нюн
[11:17:29] Лис: ю
[11:18:01] mishok13: _lorien, можешь передать партнерам, что UML это задача PM'а, а никак не программиста
[11:18:22] mishok13: если заказали проект они -- то пускай будут столь добры и UML предоставлять
[11:18:36] mishok13: хотя программисту от UML должно быть ни холодно, ни жарко
[11:19:18] Лис: гмгмгм
[11:19:19] Лис: пипец
[11:19:44] _lorien: Партнёры - люди на которых я работаю, которые поставили ТЗ. А моя задача это тз в жизнь воплотить. Партнёры - ещё один чел, с которым мы будем программить систему.
[11:19:52] Лис: SetEnv blabla 123 выставленная в апаче не видится в wsgi скрипте
[11:19:54] Лис: :/
[11:20:18] mishok13: вас 2 (два!) человека и ты UML рисовать собрался?
[11:20:23] mishok13: ты совсем ёбнулся?
[11:20:33] Лис: похоже на то :D
[11:20:34] mishok13: настрой вики и живи счастливо
[11:21:11] _lorien: Чё-т я не понял, как вики поможет мне визуализировать дерево объектов в системе.
[11:21:21] mishok13: а тебе не надо ничего визулизировать
[11:21:28] _lorien: А, вот оно что.
[11:21:33] _lorien: А что мне надо?
[11:21:37] mishok13: на сколько человекочасов проект расчитан?
[11:21:42] Лис: logging.debug('ENV: %s' % os.environ.get('djangosite'))
в логе видно
Tue, 08 Jul 2008 04:20:14 DEBUG ENV: None
[11:21:44] Лис: :(
[11:21:51] mishok13: ибо вы на грамотный UML убьете не менее 1000
[11:21:57] _lorien: Блять.
[11:22:18] Лис: SetEnv djangosite bags4gifts в апаче стоит
[11:22:40] _lorien: Мне не надо, .блять, граммотный UML, просто средства для рисования UML позволяют рисовать прямоугольнички и стрелочки, области классов и их отношений. Вот и всё что мне надо ;-)
[11:22:56] Лис: _lorien, тогда тебе и dia подойдёт
[11:22:58] _lorien: И я планирую это нарисовать сегодня, что явно меньше 1000 человекочасов.
[11:23:47] _lorien: В диа какие-то связи ебанутые, например, если линия была изначально угловатая, то при перемещании объектов, он стремится сохранить свою начальную форму и получается периодически весьма уродливо.
[11:24:09] mishok13: для этого тебе и листочек с бумажкой подойдет :)
[11:24:24] Лис: для SetEnv? :D
[11:24:34] mishok13: мне так нравится, что многие люди юмлем обзывают черновичок
[11:24:42] mishok13: шпаргалку, даже
[11:26:55] slav0nic: _lorien, вроде spe умел UML для питона
[11:30:30] Лис: какие мысли будут с передачей ENV в wsgi?
[11:31:00] Лис: os.environ['DJANGO_SETTINGS_MODULE'] = '%s_settings' % os.environ.get('DJANGO_SITE')
всегда выдаёт None
[11:31:18] Лис: хотя SetEnv стоит
[11:31:43] Лис: в апаче
[11:35:17] Лис: запихнул весь os.environ в логфайл
[11:35:36] Лис: ничо похожего на DJANGO_SITE не встечается :(
[11:40:55] Лис: может есть какой то "другой" os.environ? :)
[11:57:59] Лис: Note that the WSGI environment is passed upon each request to the application in the 'environ' argument of the application object. This environment is totally unrelated to the process environment which is kept in 'os.environ'. The !SetEnv directive has no effect on 'os.environ' and there is no way through Apache configuration directives to affect what is in the process environment.
[11:58:02] Лис: :((((
[11:58:09] Лис: пиляяяяять
[11:58:10] Лис: WTF
[11:58:15] Лис: сцуко грэхам
[11:58:47] mishok13: Лис, юз пикль?
[11:59:00] Лис: какой пикль?
[11:59:35] mishok13: pickle
[11:59:51] mishok13: запиклил настройки, а потом подхватил
[12:00:15] mishok13: /me не знает, как работает WSGI и Apache, и что вообще конкретно надо
[12:00:20] Лис: в конфиге апача значит, запиклить? :)
[12:00:32] mishok13: хм...
[12:00:53] mishok13: а в конфиг апача нет возможности записывать?
[12:00:59] Лис: есть
[12:06:04] _lorien: запустил bouml - это что-то жестокое )
[12:12:14] Лис: ога!
[12:13:30] Лис: _application = WSGIHandler()
def application(environ, start_response):
os.environ['DJANGO_SETTINGS_MODULE'] = '%s_settings' % environ.get('DJANGO_SITE' ,'thehandicrafts')
return _application(environ, start_response)
вот этот environ это как раз уже WSGI environ
[12:13:34] Лис: как раз то что надо :)
[12:13:36] Лис: \m/
[12:22:42] Хрюндель (джангист): Лис, а шо ты пытаешься хитрого такого сделать?
[12:28:42] Лис: Хрюндель (джангист), замутил что бы на одном wsgi файле запускать N-ое количество сайтов (однотипных в принципе) с разными настройками
[12:29:02] Лис: т.е. что бы в конфиге апача можно было указать какие сеттинги юзать
[12:30:37] Хрюндель (джангист): Лис, извращенец )) Ты мне лучше скажи почему он сокет открывает в папке /var/log/http/ и хуле его процесс вечно пашет.. я думал он открывается только по запросу
[12:30:51] Лис: дак мля
[12:31:00] Лис: wsgi ДЕМОН
[12:31:11] Лис: демоны они такие, висят постоянно
[12:31:24] Лис: а место сокета конфигурируется
[12:31:30] Хрюндель (джангист): демон говоришь
[12:31:59] Хрюндель (джангист): а хуле в его названии mod_ присутсвует.. мод это я думаю от слова модуль
[12:32:17] Хрюндель (джангист): а место щас гляну.. 10х
[12:33:05] Лис: ты мыслишь как похапэшнег в данном вопросе ;)
[12:33:42] Хрюндель (джангист): Лис, диградирую или наоборот подымаюсь?
[12:34:24] Лис: представь себе что mod_wsgi работал бы как mod_php, т.е. подымался бы каждый раз python интерпретатор
[12:34:26] Лис: на каждый запрос
[12:34:32] Лис: так CGI работает
[12:34:38] Лис: и это дико расточительно
[12:34:41] Лис: и тупо
[12:40:20] _lorien: вряд ли mod_php поднимает каждый раз интерпретатор т.к. это и есть интерпретатор
[12:40:46] Хрюндель (джангист): Лис, а где были настройки mod_wsgi, что то я найти не могу этот мануал.. помню же были
[12:40:59] Хрюндель (джангист): а, нашёл
[12:41:07] Лис: modwsgi.org
[12:41:25] Хрюндель (джангист): WSGISocketPrefix
[12:41:31] slav0nic: /me юзает fscgi/scgi и не знает хлопот%))
[12:42:17] Лис: slav0nic, с flup-ом ты не знаешь хлопот? БУГАГА
[12:42:20] Хрюндель (джангист): Лис, так что ты ответишь _lorien'у? Пацан говорит мол это тоже демон
[12:42:47] _lorien: mod_php это не демон, он встроен прямо в процесс апачки
[12:43:10] slav0nic: Лис, увы почти не знаю)
[12:43:20] Лис: у mod_php интерпретатор то конечно не поднимается каждый раз
[12:43:39] Лис: но тут есть одно но, во первых каждый раз скрипт стягивается с винта и парсится по новой
[12:43:58] Хрюндель (джангист): Лис, дык есть же всякие ускорители..
[12:44:00] Лис: а wsgi загружает всё что надо в память
[12:44:08] Лис: весдь твой джанго проект
[12:44:09] Хрюндель (джангист): у меня даже такой установлен
[12:44:18] Хрюндель (джангист): не помню как называется..
[12:44:21] slav0nic: кстати psyco юзает кто-то с джангой? есть ли смысл
[12:44:32] Лис: нету, глючит жутко
[12:44:36] mishok13: slav0nic, а что, все только на x86?
[12:44:56] slav0nic: psyco? да
[12:44:58] Лис: и да, psyco тока на x86 припрост даёт
[12:45:12] Хрюндель (джангист): Лис, как нету? У меня год уже сайт работает с этим ускорителем 30 тыщ просмотров страниц в день..
[12:45:17] Лис: alrod помоему ставил эксперементы
[12:45:38] slav0nic: Лис, с того времени много воды утекло))
[12:46:15] Лис: ну хз, помоему палутшэ юзать статик генератор тогда :)
[12:46:19] slav0nic: Хрюндель (джангист), какие ускорители?
[12:46:23] mishok13: Лис, psyco только на x86 работает
[12:46:38] mishok13: slav0nic, psyco не развивается уже вот как 1,5 года
[12:46:43] mishok13: ибо автор ушел в pypy
[12:46:43] Лис: mishok13, это ты slav0nicу скажи :)
[12:46:55] slav0nic: млять) я знаю что только на 86
[12:47:02] slav0nic: я спрашвиаю кто юзает и стоит ли оно того)
[12:47:11] Лис: /me не юзает
[12:47:24] mishok13: /me никому бы не советовал юзать
[12:47:30] Лис: слайсы x86_64
[12:47:33] _lorien: даже врагу?
[12:47:40] Лис: врагу можно %)
[12:48:00] mishok13: врагу похапэ
[12:48:07] Лис: бугага
[12:48:08] Лис: +1
[12:48:34] slav0nic: ))
[12:49:02] Хрюндель (джангист): Лис, вот этот http://eaccelerator.net/
[12:49:18] Лис: в рот ему ноги
[12:49:21] slav0nic: ёб, я думал вы про питон)
[12:49:34] slav0nic: кеш тупой
[12:49:38] Лис: угу
[12:51:48] Хрюндель (джангист): WSGISocketPrefix cannot occur within <VirtualHost> section
[12:51:52] Хрюндель (джангист): шозанах?
[12:52:08] Хрюндель (джангист): а.. хотя может
[13:16:15] xa4a: Ханс Рейзер привел полицейских к телу своей жены.... ну вот
[13:17:35] plkjm: фотки де?
[13:21:55] mishok13: http://www.sfgate.com/cgi-bin/article.cgi?f=/c/a/2008/07/07/BAN011LDR8.DTL
[13:22:20] mishok13: там и фотки
[13:26:04] slav0nic: хорошо что я консерватор и юзаю ext3 %)
[13:26:23] plkjm: у меня zfs))
[13:56:27] : This room is not anonymous
[13:56:27] : piranha has set the subject to: Python.SU | Код постить в dumpz.org | Логи: http://xa4a.org.ua/logs/pythonua@conference.jabber.ru/ | Хочешь задать вопрос - просто *задай* его! | Разрешено не более 2 тупых вопросов в день от человека
[14:09:15] red-agent: hi2all
[14:09:19] red-agent: вопрос
[14:10:06] red-agent: django.contrib.sites, без него неработают некоторые фичи - пришлось включить, синкнуть бд и вычклюить (чтоб в админке не маячило), есть какой-нить меньший костыль?
[14:10:10] _lorien: А как у вас обычно хранятся каталоги с django проектами? Логично было бы просто класть код в каталог с именем, равным домену, но django запрещает давать каталогам проектов имена с точкой. А создавать внутри дополнительный каталог типа web_site тоже как-то тупо.
[14:10:37] red-agent: _lorien: в /home/django/ProjectName
[14:10:54] xa4a: _lorien: отнюдь не тупо. а рядом с ним - каталог с темплатами, каталог со статикой итд
[14:11:38] _lorien: xa4a, в byteflow так было, что код. а рядом темплейты, статика - как-то неудобно это всё :-/ Я привык, что всё в одном корне лежит
[14:11:58] xa4a: ну и ссзб :)
[14:12:09] xa4a: по-моему довольно удобно
[14:12:14] xa4a: сделай себе симлинков
[14:12:24] xa4a: и в .hgignore
[14:12:29] xa4a: их
[14:12:37] _lorien: ой, не люблю симлинки
[14:12:41] xa4a: red-agent: а какие фичи не работают?
[14:12:50] _lorien: flatpages, наверное
[14:12:55] red-agent: view on site
[14:12:58] red-agent: flat pages
[14:13:05] red-agent: оно из sites имя домена тянет
[14:13:28] _lorien: ну, только переписать flatpages или какой-нить аццкий манкипатчинг =)
[14:13:30] red-agent: syndication скорее всего тоже не будет работать
[14:13:49] red-agent: ладно, оставлю пока так
[14:13:56] red-agent: судя по всему - модель оно успешно ретривит
[14:14:04] red-agent: хоть аппликухи и нет в INSTALLED_APPS
[14:16:40] red-agent: и еще
[14:16:48] red-agent: feedback писал кто-нить?
[14:17:12] _lorien: xa4a, а зачем делать симлинки, если можно просто хранить в этих каталогах? =)
[14:17:38] red-agent: там вобще без кастомайзинга админки не обойтись?
[14:19:43] xa4a: _lorien: может это такое усиленное MVC? хотя с ходу не отвечу чего советуют так делать
[14:35:22] slav0nic: red-agent, а что фидбек? выводи в шаблоне форму и всё, и на флетпейджес текст наяй если надо
[14:37:29] red-agent: мне их в админке показывать нада
[14:40:02] red-agent: ммм
[14:40:09] red-agent: /me что-то тупит
[14:40:35] red-agent: как лучше разбить список из n элментов на m списков по 15 элементов?
[14:40:43] red-agent: ато у меня костыли какие-то получаются
[14:41:45] _lorien: [foo[x:x + step] for x in xrange(0, len(foo), step)] ?
[14:42:20] xa4a: http://mail.python.org/pipermail/python-list/2005-June/325757.html
[14:42:38] plkjm: red-agent: а тебе зачем?
[14:42:45] plkjm: список
[14:44:41] red-agent: zip(*[lst[i::n] for i in range(n)])
[14:45:43] piranha: э?
[14:45:50] piranha: и чё это тебе даст?
[14:46:55] xa4a: это захавает лишние элементы
[15:15:33] xa4a: хм.. а если я во вьюхе выполняю один свой sql и парочку через orm, то можно их как-то обернуть в транзакицю одну?
[15:16:52] xa4a: и куда бы об этом почитать?
[15:17:31] xa4a: о, нашёл /documentation/transactions/
[15:20:52] xa4a: хотя там сказано только про орм
[15:23:47] red-agent: когда там уже newfowms-admin будет?
[15:24:01] slav0nic: Лис, накаркал)) у меня блог завис)
[15:24:05] slav0nic: про fcgi
[15:24:11] Лис: жажа
[15:24:16] Лис: ибо НЕХ!
[15:24:16] red-agent: да fcgi вобще паскудство
[15:24:21] red-agent: но /me приходится его юзать
[15:24:28] slav0nic: смотря как запускать
[15:24:35] slav0nic: через юникс сокет он бывает отвалвиается
[15:24:38] slav0nic: а так - я scgi
[15:24:40] red-agent: пришлось заюзать префорк с ограничением до 10 чайлдов
[15:24:53] red-agent: иначе забить рам вдса - как два пальца обоссать
[15:25:20] red-agent: не, /me через unix://
[15:25:54] Лис: s/\/me/unix:\/\//
[15:25:56] Лис: :)
[15:26:05] Лис: обожаю реги
[15:26:30] Лис: а во всём виноваты перларасы
[15:27:18] xa4a: Лис: s!(?!
[15:27:21] xa4a: ыэ
[15:27:28] xa4a: сцуко
[15:27:32] xa4a: захавало регу
[15:27:43] xa4a: <test>
[15:27:46] xa4a: гм
[15:28:14] Лис: kopete ufdyj! :D
[15:28:31] xa4a: s!(?!<(\\)*\)/!\!!
[15:28:36] xa4a: это первая часть
[15:28:50] xa4a: а вторая: s!\\/!/!
[15:28:53] xa4a: вот
[15:29:15] xa4a: короче, там, где хочешь использовать символ / - юзать дроугой разделитель
[15:29:53] slav0nic: какой-то извращенец зашёл на мой блог по ключу
(\x3c vs \xe3)
[15:30:41] Лис: slav0nic, и сломал fcgi!
[15:30:42] Лис: хахаха
[15:30:46] slav0nic: )
[15:30:57] slav0nic: backend is overloaded; we'll disable it for 2 seconds and send the request to another backend instead: reconnects: 0 load: 261
[15:31:02] slav0nic: такое бывает случается
[15:32:34] slav0nic: я джангу через init.d пускаю и как scgi юзаю, вроде номрально
[15:32:44] slav0nic: *через
[15:34:14] red-agent: а я не парюсь по этому поводу
[15:34:22] red-agent: пускаю чепез runfcgi
[15:34:28] red-agent: убиваю через fuser -k
[15:42:55] slav0nic: daemonize=true есть
[15:43:09] red-agent: ну, я его и юзаю
[15:43:12] slav0nic: через init.d удобней всё равно) как сервис
[15:45:06] Лис: /me представил 100 init.d скриптов, для запуска 100 сайтов
[15:45:08] Лис: \m/
[15:45:12] Лис: мегокул
[15:46:49] red-agent: нафиг 100?
[15:46:58] red-agent: можна сделать один с конфигом, в /etc/conf.d/
[15:47:09] red-agent: где прописать все директории с прожектами
[15:47:53] Лис: конечно
[15:48:10] Лис: но всёравно удобрее всем этим хозяйством рулить из под mod_wsgi
[15:49:17] red-agent: mod_wsgi это гемор в случае с nginx
[15:49:57] Лис: вернулись к началу :)
[15:50:06] Лис: mod_wsgi апачевый я имел ввиду
[15:50:14] Лис: nginx просто как FE
[15:50:40] Лис: revers proxy c раздачей статики (что бы слона по мелочам не дёргать)
[15:50:57] Лис: хотя я точно помню red-agent этот план обосрал уже :)
[15:54:33] slav0nic: Лис, там в скрипте указывается каталог с проектами и они все перетсартовуются/запускаются одновременно
а я представил сколько озу надо для 100 сайтов)
[15:55:18] Лис: у меня сайтег такой нормальненкий 30 метов жрёт
[15:55:26] Лис: всего лишь %)
[15:55:54] Лис: не. ну перезапускать все сайты из-за одного как то тоже тупо
[15:56:06] red-agent: Лис: захуярь http_load со 100мб канала на 300 concurrent
[15:56:17] red-agent: так сайтек и поляжет
[15:56:18] red-agent: =)
[15:56:22] red-agent: вместе с апачем, вдс
[15:56:27] red-agent: и всем, что там крутится
[15:56:32] red-agent: tested by red-agent
[15:56:39] Лис: ну так а шо ты хотел от VPS
[15:57:04] red-agent: в общем, nginx + fcgi зарезанный и iptables руляд
[15:58:02] slav0nic: угу, iptables надо будет тож настроить
[15:58:11] slav0nic: а то идиоты надуйтся) и конкуренты
[16:00:05] slav0nic: раньше с ддосерами вено воевали) потом контроллер сказёвый сдох )
[16:10:39] Лис: ого, гугл изобрели свой json
[16:10:40] Лис: http://code.google.com/apis/protocolbuffers/docs/pythontutorial.html
[16:12:25] xa4a: /me как раз сидит, читает
[16:16:18] xa4a: похоже, скорее свой xml, чем json
[16:40:50] red-agent: бля
[16:40:58] red-agent: prepopulate_from ничерта не работает
[16:41:33] slav0nic: в смысле?
[16:41:39] slav0nic: там js
[16:41:53] slav0nic: если едитабле==фалсе то нчиё не будет
[16:42:13] red-agent: зашибись
[16:42:18] Лис: red-agent, prepopulate_from из newforms-admin замачили помоему
[16:42:22] red-agent: но даже так не работает почему-то
[16:42:34] Лис: если ты nfa юзаешь конечно
[16:42:43] red-agent: title = CharField(max_length=120, unique=True)
slug = SlugField(max_length=120, prepopulate_from=('title',))
[16:42:49] red-agent: да не nfa
[16:42:54] red-agent: обычная джанга из транка
[16:43:12] slav0nic: там вроде по другому сделали
[16:43:30] red-agent: а, все
[16:43:33] red-agent: разхлебался
[16:43:37] Лис: а шо было?
[16:43:58] red-agent: да хз
[16:44:02] slav0nic: )
[16:44:08] red-agent: может попал на не перезапустившийся демон
[16:44:09] red-agent: =)
[16:44:13] red-agent: такой иногда случается
[16:44:13] Лис: %)
[16:51:59] red-agent: гм
[16:52:10] red-agent: можна как-нить заставить слаг пробелы на _ менять, а не на -
[16:53:23] piranha: fuck-you :D
[16:53:29] piranha: oops
[16:53:33] piranha: fuck-you-:
[16:53:35] piranha: ну ты понял
[16:53:48] piranha: red-agent: написать свой слагификатор
[17:01:36] slav0nic: red-agent, можешь pytils заюзать и делать это при сейве
[17:01:41] slav0nic: но накуй надо)
[17:01:42] psix: кто-нибудь юзал модуль xmpp?
[17:02:10] slav0nic: а лучше при сейве слуг перекоцывать)
[17:02:34] xa4a: psix: xmpppy я юзал
[17:02:38] mishok13: psix, кто-нибудь да юзал
[17:03:29] psix: xa4aб, можешь объяснить откуда в примере 'bot.py' берется 'mess'
[17:03:39] psix: 2-ой час голову ломаю
[17:04:16] xa4a: из формальных параметров?
[17:04:36] psix: ?
[17:04:58] xa4a: в какой строке?
[17:05:06] red-agent: тоесть скрыть из формы слаг не удастся?
[17:05:09] red-agent: при добавлении?
[17:05:12] red-agent: а если через fields?
[17:05:16] red-agent: просто не добавить его там
[17:05:26] red-agent: то по-ходу тоже облом, т.к. оно заполняется через js
[17:05:40] psix: xa4a, в 33
[17:06:12] xa4a: def messageCB(conn,mess): ?
[17:06:21] psix: он нигде необъявляется, но используется
[17:06:34] xa4a: это колбек вызывается с заданными параметрами
[17:06:37] xa4a: callback
[17:06:38] psix: xa4a, да
[17:06:41] xa4a: да
[17:08:20] psix: xa4a, как я понимаю mess=xmpp.protocol.Message?
[17:19:14] slav0nic: глюфи iceweasel 3.0 заипали
[17:20:00] piranha: %username% рулит
[17:32:14] red-agent: хмммм
[17:32:43] red-agent: flatpages в админке слишком много опций вываливает
[17:32:58] red-agent: и даже не чекает, что comments и прочая гадость из contrib у меня не включена
[17:33:31] slav0nic: то просто флажок
[17:33:59] red-agent: да этот флажок как-то ни туда и ни сюда
[17:34:00] red-agent: хлам
[17:34:04] slav0nic: ну да))
[17:34:14] slav0nic: критично?)
[17:34:20] red-agent: еще и фильтры
[17:34:20] slav0nic: хотя если не для себя делаешь то да
[17:34:31] red-agent: slav0nic: в данном случае - д
[17:34:32] red-agent: а
[17:37:10] red-agent: slav0nic: что-нить посоветушь?
[17:37:30] red-agent: хотя в принципе - вариантов больше нет, как писать велосипед
[17:37:33] slav0nic: хз
[17:37:36] slav0nic: ))
[17:39:24] slav0nic: можешь попробовать взять модель
from django.contrib.flatpages.models import FlatPage
и едитабле фелсе или чёт с полями сотворить
[17:39:39] xa4a: э..
[17:39:41] xa4a: этавот
[17:39:48] xa4a: там выше было...
[17:40:02] xa4a: (17:11:46) # psix has left the chat. (17:12:21) # QIP отличная программа. Зюлькорнеева Ильхама. Аську лучшую скачать. Письки мокрые лизать has joined the chat.
[17:40:07] xa4a: wtf?
[17:40:23] slav0nic: )
[17:41:20] red-agent: складывается такое впечятление, что большую половину contrib. писали идиоты
[17:41:35] mishok13: xa4a, новый вид спама
[17:42:16] slav0nic: ))
[17:42:27] : This room is not anonymous
[17:42:28] : piranha has set the subject to: Python.SU | Код постить в dumpz.org | Логи: http://xa4a.org.ua/logs/pythonua@conference.jabber.ru/ | Хочешь задать вопрос - просто *задай* его! | Разрешено не более 2 тупых вопросов в день от человека
[17:45:27] slav0nic: red-agent, add_to_class сделай и поменяй поле на тож самое с editable=False
[17:46:26] red-agent: да пофигш
[17:49:40] red-agent: мне проще написать свое =)
[17:50:16] slav0nic: ))ну да
[17:51:11] red-agent: sites тоже наркоманы писали
[17:51:21] slav0nic: эт все знают)
[17:51:38] slav0nic: но вот возьми и предложи им переделать)
[17:51:47] slav0nic: правда перед релизом толку мало будет)
[18:02:25] Лис: что бы был толк, надо в спринте учавствовать
[18:14:57] pantil: У меня вопрос не совсем по питону, но всеравно спрошу. Делаю выборку из базы, сортирую по полю date , известен id одной строки, мне надо получить предыдущую и еще следующую строки.
[18:26:06] pleax: хай
в django-admin в list_display можно как-нибудь задать, чтобы выводилось некоторое свойство ForeignKey'я
например user.username для поля user = models.ForeignKey('auth.User') ?
[18:26:38] piranha: а через точку уже пробовал писать?
[18:26:52] pleax: ага
[18:27:00] piranha: тада хз )
[18:27:03] piranha: ваще можно
[18:27:22] piranha: делаешь кастомный метод, типа
def user_username(self):
return self.user.username
[18:27:25] piranha: и потом тупо его показываешь
[18:27:29] piranha: катит? )
[18:27:35] pleax: это я знаю
[18:28:20] pleax: хотелось узнать возможно ли свойства related-объектов дергать
[18:28:28] piranha: хз
[18:28:35] piranha: похоже, что нет
[18:28:52] red-agent: можна
[18:28:59] pleax: у меня в проекте админка побочная и будет в последствии вырезана
хочется без левых методов в моделях
[18:29:00] xa4a: может __ ?
[18:29:03] red-agent: угу
[18:29:10] pleax: двойной подчерк тоже пробовал
[18:29:19] red-agent: одинарный
[18:29:37] red-agent: field_attr
[18:29:37] piranha: да ну, одинарный - нелогично и ваще
[18:29:46] piranha: ты пробовал?
[18:30:01] red-agent: piranha: да кажется позавчера было где-то
[18:30:07] red-agent: помнится с прочерками как-то выебнулся
[18:30:07] piranha: хм
[18:30:08] pleax: попробовал. не проканало
[18:30:09] piranha: это будет странно
[18:30:16] piranha: во, а это нормально )
[18:30:44] red-agent: а вот для тегов через запятую - пришлось велосипедить методами
[18:31:17] red-agent: а, это было в search_fields
[18:31:25] red-agent: через __
[18:34:03] pleax: ладно, хрен с ним
[18:34:28] pleax: еще вопрос, как в джанго виртуал хосты обрабатывать?
[18:36:36] pleax: url-dispatcher умеет?
тоесть нужно обрабатывать все домены вида
<username>.project.com
[18:36:56] red-agent: а по-ходу если урл без домена - то URLField не прокатит?
[18:36:56] xa4a: url dispatcher обрабатывает только путь
[18:37:04] pleax: причем в зависимости от дальнейшего адреса различными вьюшками
[18:37:35] red-agent: pleax: юзай django.contrib.sites
[18:38:27] pleax: так сорри, таксо ждет
доберусь до дома буду дальше спрашивать :)
[18:38:30] Лис: pleax, реально, url dispatcher чихать хотел на хосты
[18:38:48] Лис: ему важны только пути
[18:38:53] red-agent: ну так что с урлфилд?
[18:39:04] red-agent: он схватает нотацию вида some/shit
[18:39:09] Лис: red-agent, нет
[18:39:18] red-agent: ясно
[18:39:34] Лис: мало того, он ещё urllib-ом проверит существует ли указанный адрес, если не отключить спецально
[18:39:42] red-agent: verify_exists
[18:39:44] red-agent: это я знаю
[18:45:28] pantil: подскажите как в джанге получить из базы все записи с id больше определенного числа?
[18:46:18] red-agent: да ты офанарел?
[18:46:24] red-agent: http://www.djangoproject.com/documentation/db-api/
[18:51:11] red-agent: что-то /me не вкурил зачем этот кусок во flatpages
15 except:
16 if settings.DEBUG:
17 raise
18 return response
[18:51:27] red-agent: а, все
[18:51:33] red-agent: вкурил, просто строку одну провтыкал
[18:54:38] Лис: pleax, http://www.djangoproject.com/documentation/db-api/#gt
[18:57:02] piranha: Лис: ну ты ссылки жоско раздаёшь :)
[19:00:14] red-agent: ммм, как в админке имя аппликухи задать?
[19:00:24] red-agent: Flat_Pages
[19:00:30] red-agent: чтобы _ убрать
[19:02:00] Лис: piranha, а чо?
[19:02:11] piranha: Лис: посмотри внимательно, кому
[19:02:25] Лис: оу...
[19:02:48] Лис: развелось тут на букву p
[19:02:50] Лис: понимаешь ли
[19:03:00] Лис: :D
[19:12:09] Лис: хохо, gajim.org :)
[19:13:01] xa4a: ы?
[19:22:25] Лис: pantil (pan@gajim.org) ушел
[19:22:28] Лис: домен
[19:29:44] red-agent: ну так что там с _?
[19:29:47] red-agent: есть варианты?
[19:32:47] spac3man: Всем привет. Намечается один проект, нужен человек со знанием python+django. Желательно из Красноярска (хотя конечно шансы этого стремятся к нулю), но возможна и удаленная работа. Плз прошу заинтересовавшихся писать в приват.
[19:33:25] spac3man: Да, буду благодарен если накидаете ссылок, где можно это объявление запостить (форумы, конференции и т.п.)
[19:33:28] red-agent: и еще, если в модели нету ни fk ни m2m, то .all() сделает только один запрос?
[19:43:39] piranha: spac3man: softwaremaniacs.org, python.su, groups.google.com/group/django-russian
[19:43:54] piranha: red-agent: да
[19:44:11] piranha: red-agent: и даже если есть, то всё равно только 1. Если не будешь обращаться к fk/m2m.
[19:44:21] red-agent: 10x
[19:44:25] red-agent: а с именем аппликухи?
[19:44:30] red-agent: без вариантов?
[19:45:06] piranha: хз, а в Meta нету verbose_name?
[19:45:52] red-agent: ну там для модели
[19:46:04] piranha: а тебе для чего?
[19:46:08] piranha: ааа, для аппликухи?
[19:46:13] piranha: нет, для аппликухи низя
[19:46:15] plkjm: lol кто на линуксовку в субботу пойдет?
[19:46:18] spac3man: piranha: ок, пасиб
[19:46:26] piranha: plkjm: где?
[19:46:32] plkjm: в киеве
[19:46:35] piranha: гы
[19:46:43] red-agent: да блять
[19:46:44] piranha: но я всё равно не попадаю :(
[19:46:48] red-agent: как нельязя-то?
[19:46:55] piranha: red-agent: дык вот та
[19:46:56] red-agent: писец
[19:47:07] red-agent: /me злой
[19:47:08] piranha: вот проапгрейдят INSTALLED_APPS - и можно будет
[19:47:19] piranha: блять да шо ты за админку уцепилсо
[19:47:22] plkjm: http://www.linuxforum.org.ua/viewtopic.php?f=11&t=801&p=5775
[19:47:32] red-agent: да потому, шо админка - это основная часть мое прожекта
[19:47:35] red-agent: злоебучего
[19:47:40] red-agent: *го
[19:47:41] piranha: гы
[19:47:45] piranha: NFA юзаешь?
[19:47:49] red-agent: неа
[19:47:50] red-agent: из транка
[19:47:56] red-agent: и правит сорсы тоже не вариант
[19:48:07] red-agent: ибо не себе делаю, а при апдейте - все слетит нахер =)
[19:49:10] xa4a: /me тоже в данный момент дорабатывает проект, который базируется на админке старой. Причём часто это выглядит как подмена админских вьюх/темплат своими
[19:49:57] xa4a: может тебе поможет переопрделить темплейттег из django/contrib/admin/templatetags/adminapplist.py своим, который запишет что надо
[19:51:31] piranha: хех, я ленивое сильно, чтоб с админкой так возиццо
[19:53:05] red-agent: да ебаный в рот
[19:55:41] red-agent: джанга чихает на debug=True
[19:55:45] red-agent: и хуярит мне 500
[19:58:43] red-agent: /me промычал под нос: а маразм - крепчал...
[20:28:48] : This room is not anonymous
[20:28:54] : piranha has set the subject to: Python.SU | Код постить в dumpz.org | Логи: http://xa4a.org.ua/logs/pythonua@conference.jabber.ru/ | Хочешь задать вопрос - просто *задай* его! | Разрешено не более 2 тупых вопросов в день от человека
[20:55:59] Лис: diablo2 на wine идёт?
[20:56:51] tek: геймер!
[21:02:12] Лис: пашет :)
[21:02:14] red-agent: бля
[21:02:15] red-agent: не ебет
[21:02:25] red-agent: мне нужно убрать то злоебучее _
[21:02:39] piranha: а темплейт теги работают только с return, или с yield - тоже?
[21:02:54] Лис: piranha, попробуй :)
[21:03:14] piranha: Лис: да просто нереально много переделывать придёцо, если провтыкаю
[21:03:24] piranha: а, я щас фигню какую-то илдну
[21:03:29] Лис: дак попробуй тестовый тег какой то
[21:03:36] piranha: ога
[21:05:59] piranha: Лис: <generator object at 0x8c3870c>
[21:06:02] piranha: вот такая вот херня
[21:06:05] piranha: вот же уроды :(
[21:06:45] Лис: /me издал пердящий звук
[21:06:53] piranha: да капец
[21:07:00] xa4a: это в фор?
[21:07:13] piranha: я уже думаю просто рисовать в темплейт кучу тегов, которые делать отдельно
[21:07:28] piranha: xa4a: ну... for i in range(5): yield i
[21:07:39] piranha: и в темплейт выводит вот такую хрень :(
[21:07:52] piranha: http://appdb.winehq.org/objectManager.php?sClass=application&iId=7072
[21:07:55] piranha: и это тоже как-то тупо
[21:08:00] xa4a: piranha: ну дык. и просто вызов вернёт ведь итератор. ты же хочешь по нему итерироваться
[21:08:19] piranha: xa4a: я хочу шоб сама джанга по нему итерировалась )
[21:08:23] xa4a: *просто вызов - в питоне
[21:08:24] Лис: TrackMania Nations Forever
You do not have permission to view this entry
[21:08:26] Лис: гым
[21:08:29] piranha: но вообще я твою мысль понял
[21:08:29] Лис: piranha, чо за линк?
[21:08:35] piranha: Лис: угу, и у меня тоже
[21:08:38] xa4a: итерироваться фором ведь только
[21:08:40] piranha: Лис: а, может зарегацо надо
[21:08:54] Лис: openid умеет?
[21:08:57] piranha: xa4a: шото ты страшное говоришь
[21:09:00] Лис: если нет, нах! :)
[21:09:02] Лис: фпадлу
[21:09:12] piranha: xa4a: как я буду итерироваться по кастомному темплейт тегу?
[21:09:36] xa4a: piranha: а, ок. тоесть ты хочешь один тег, который при последовательных вызовах разные вещи делал?
[21:10:02] piranha: нет
[21:10:23] piranha: я тупо просто не хочу в теге составлять одну огромную строку, которую потом буду ретурнить
[21:10:32] piranha: yield выходит тупо на порядок разумнее
[21:11:14] Лис: но не поддерживается
[21:11:19] Лис: так что придётся строку
[21:11:36] Лис: в цикле вызывать .render() :)
[21:11:40] piranha: :(
[21:11:53] Лис: не плачь, я так тоже мутил, не ты один такой дурак
[21:11:55] Лис: :D
[21:12:15] piranha: )
[21:12:21] piranha: но это ж логично
[21:12:32] piranha: вернулся итератор, а не строка - пробегитесь по нему!
[21:12:47] Лис: будешь в спринте решать этот вопрос?
[21:12:48] Лис: :)
[21:13:27] piranha: на спринт не попадаю :(
[21:13:44] Лис: откосить задумал!
[21:14:16] piranha: да и откошу )
[21:29:21] Лис: зладей блин
[21:45:13] red-agent: прикиньте
[21:45:24] red-agent: пришлось переименовать во flatpages
[21:46:04] red-agent: вот такая вот на первый взгляд мелкая хуйня - нихуя не радует
[21:57:33] Хрюндель (джангист): Ёпт, как в ModelForm изменить что то уже после того как форму засабмители? Например есть поле автор, естественно я не хочу давать выбирать людям менять его. Оно должно быть request.user так сказать. Поэтому я не вывожу его совсем, ни в хайден, ни в хуяйден. После этого но перед тем как запустить is_valid() я хочу добавить в form = myModelForm(request.POST) ещё и то поле которого не хватает. Можно конечно сделать сразу save(commit=False) потом добавить нужное, потом всё это проверить is_valid() и потом снова save()
(хотя я ещё не проверял этот способ) но по моему это извращение.. у кого нибудь идеи есть?
[22:12:42] slav0nic: user = request.user
uform = UserForm(instance=user)
если нет то хз
[22:15:11] Хрюндель (джангист): slav0nic, в том то и дело что instance должен быть от той модели на которую форма идёт.. А у меня модель например Comment, а ты туда instance от User предлагаешь впихнуть
[22:16:19] slav0nic: лень думать)
[22:16:40] Хрюндель (джангист): Лис, нуко, раскинь мозгами
[22:17:08] Хрюндель (джангист): slav0nic, правильно, хуле за еврея думать ))
[22:17:20] slav0nic: ))именно
[22:19:35] slav0nic: Хрюндель (джангист), а нельзя чтоли сначала получить редактируемый камментарий, сделать его инстанс и в save задать поля какие надо изменить?
[22:19:46] slav0nic: зы моделформ юзал 1 раз)
[22:20:03] Хрюндель (джангист): а он новый комментарий.. я не редактирую
[22:20:40] slav0nic: ну юзера в сейв вхуярить
[22:21:13] Хрюндель (джангист): slav0nic, интересно как?
[22:21:23] slav0nic: uform.user = request.user
uform.save() разве так низзя?
[22:21:31] Хрюндель (джангист): нео
[22:22:48] Хрюндель (джангист): оно просто тупо создаст в классе новый атребут user )) сами поля лежат в form.fields, но в них не значения хранятся, а инстансы полей.. короче хз, я уже второй день после работы пытаюсь над этим подумать и всё никак не придумаю
[22:26:31] slav0nic: ну да
ну тыж по ходу словарь передаёшь как данные, что меншает туда значение юзера вбить?
[22:27:45] Хрюндель (джангист): slav0nic, то что request.POST блять это какой то QueryDict и он иммутебел
[22:29:10] slav0nic: шо? ты шо мля не можешь нужные переменны выдрать из поста?
и сделать словарь + юзер нужный?
[22:30:14] xa4a: request.POST.copy()
[22:30:35] Хрюндель (джангист): xa4a, ща попробуем
[22:30:52] slav0nic: от уже
Хрюндель (джангист) с тебя 10% дохода)
[22:31:08] xa4a: так он за еду)
[22:32:00] slav0nic: тогда он не еврей)
[22:34:49] Хрюндель (джангист): фигня какая то.. добавил нужное поле, но валидацию не проходит
[22:35:17] Хрюндель (джангист): data = request.POST.copy()
data['author'] = request.user
form = CreatePostForm(data)
if form.is_valid():
[22:36:24] xa4a: /me .oO( pdb-pdb.. )
[22:37:01] Хрюндель (джангист): о
[22:37:06] Хрюндель (джангист): вроде что то получилось
[22:37:48] Хрюндель (джангист): вот так
data = request.POST.copy()
data['author'] = request.user.id
form = CreatePostForm(data)
if form.is_valid():
[22:37:55] slav0nic: доюавишь нас в AUTHORS
[22:38:39] Хрюндель (джангист): slav0nic, нифига.. ты меня только сбивал с толку поганый антисимит.. я твой емэйл в bugs and suggestions оставлю ))
[22:38:45] slav0nic: ))
[22:39:13] slav0nic: бушь мне допенсии шекели кидать на счёт)
[22:40:25] mimmuror: а есть какая-нибудь либа для питона, чтобы .xls редактировать?
[22:40:43] xa4a: mimmuror: тебя гугл сюда прислал?
[22:41:15] mimmuror: ладно, у него спрошу =)
[22:41:27] mimmuror: думал, может вы знаете)
[22:42:16] slav0nic: он больше нас знает, поверь
[22:43:45] Хрюндель (джангист): Яндекс тоже кое чего знает
[22:48:29] mimmuror: нашлась
[22:48:31] mimmuror: pyExcelerator
[22:48:51] slav0nic: там новее было чёт
[22:49:03] satels: расскажи)
[22:49:11] mimmuror: ну это не мне =)
[22:50:25] mishok13: xlrd бль
[22:51:00] satels: :)
[22:51:09] slav0nic: да
[22:51:21] slav0nic: блин пока нашёл в репозитории)) он в конце самом
[22:51:23] satels: >редактировать?
[22:51:49] satels: она подходит для редактировать?
[22:51:54] xa4a: гг http://manderlbot.org/docs/ As the original authors would not consider my patches, I forked the project, keeping the name
[22:52:05] xa4a: (they seemed not to work on their version at all)
[22:52:18] xa4a: простой чувак такой)
[22:52:33] mimmuror: to extract data from Microsoft Excel (tm) spreadsheet files
[22:52:44] mimmuror: только to extract
[22:54:17] slav0nic: угу
[22:58:14] Melefaro: всем привет!
[23:01:27] Melefaro: Где можно почитать про гтк2 в общем и PyGTK в частности?На русском(
[23:02:14] Melefaro: гугль не помогает(
[23:02:44] xa4a: на русском мало вероятности, что информация будет полезной
[23:03:11] Melefaro: ну хоть какая нить
[23:04:27] Melefaro: насколько я понимаю,гтк2 мало отличаеться,что в сях что в питоне
[23:04:58] slav0nic: угу базу почитай на англ в примерах и читай по С
[23:06:13] slav0nic: хотя
[23:06:15] slav0nic: де-то видел
[23:06:38] slav0nic: http://slav0nic.org.ua/static/books/GTK/
[23:06:43] slav0nic: ипать))
[23:06:50] slav0nic: давно не пересматривал
[23:06:53] slav0nic: правда там по С
[23:07:09] slav0nic: и не помню что но автор этого перевода собирался не останавливаться на достигнутом
[23:07:28] Melefaro: попробую разобраться,посибо))
[23:07:37] Melefaro: походу мы земляки с тобой)
[23:07:52] slav0nic: ну так comUA как бы
[23:08:06] Melefaro: ты со ставрополя?
[23:08:10] slav0nic: не
[23:08:11] slav0nic: dp
[23:08:33] Melefaro: обознался)
[23:08:50] red-agent: 'django.core.context_processors.auth',
[23:08:54] red-agent: жрет запросы
[23:08:59] red-agent: а без него админка неработает
[23:09:00] red-agent: =(
[23:09:10] slav0nic: сессии создаёт? угу
[23:09:28] red-agent: да оно мне в принципе не нужно
[23:09:36] red-agent: в публичной части
[23:09:42] slav0nic: да там кроме этого ещё пару левых запросов имеются)
[23:10:09] red-agent: ну зашибись
[23:10:13] red-agent: и что делать?
[23:10:24] red-agent: велосипедить в своим render_to декораторе?
[23:10:26] slav0nic: мне все отвечали забить)
[23:11:13] xa4a: хм... у нас, афаик, админка на отдельном сервере, а на основном sessions middleware отрублено ваще
[23:11:14] red-agent: да ну нафиг
[23:11:16] red-agent: забить
[23:11:37] дейв: забить! :)
[23:11:42] red-agent: у меня и так запросов доху
[23:11:43] red-agent: я
[23:11:56] red-agent: каждый на весь золота
[23:12:09] дейв: тем более, значит тройкой меньше, не спасет
[23:12:23] дейв: вообще надо запросы убирать до разумного минимума, а потом в кеш
[23:12:41] дейв: если в переделах 15 на страницу с рабочим кешем, то норма
[23:13:15] red-agent: да какие там 15
[23:13:23] red-agent: в блоге все 35
[23:13:32] red-agent: они все правда маленькие
[23:13:39] red-agent: много countов
[23:14:14] дейв: ну 35 это почти норма и можно не парится
[23:14:20] slav0nic: red-agent, а зачем каунты? я поле создал в модели
[23:14:38] red-agent: каунты для m2m
[23:14:42] дейв: во, во. Славоник дело говорит
[23:14:44] red-agent: для тегов
[23:14:49] red-agent: в общем это не суть
[23:14:50] дейв: денормализация в разумных приделах рулит
[23:15:06] red-agent: суть в том, что auth 4 запроса на страницу хавает
[23:15:36] xa4a: вместо каунтов - поле+триггеры
[23:15:49] дейв: вот когда будет всего 5 и из них 4 auth, тогда уже и думай б их удалении
[23:16:06] red-agent: ну, на некоторых страницах так и есть
[23:16:14] red-agent: по 1 запросу на саму страницу и 4 на auth
[23:16:48] дейв: :) во. это дело уже.
[23:16:54] дейв: хотя всё равно толку мало
[23:16:57] дейв: оно того не стоит
[23:17:22] дейв: лучше пару новых фич добавить, чем боротся с ветрянными мельницами
[23:17:40] slav0nic: red-agent, там для сессий можно кеш юзать
[23:17:42] slav0nic: http://www.djangoproject.com/documentation/sessions/#configuring-the-session-engine
[23:18:49] red-agent: у меня кеша нету
[23:18:52] red-agent: собственно
[23:18:53] red-agent: =)
[23:19:05] Melefaro: slav0nic: архив битый
[23:19:14] дейв: ууу
[23:19:16] slav0nic: Melefaro, хз( нагугли тогда
[23:19:21] red-agent: точнее, я его пробовал прикручивать
[23:19:22] red-agent: locmem
[23:19:30] red-agent: но т.к. никаких результатов он не давал
[23:19:35] red-agent: ни по времени ни по запросам
[23:19:38] red-agent: я его тупо убра
[23:19:44] slav0nic: ты видать чёт не так делал)
[23:19:58] дейв: ты его тупо использовал видимо:)
[23:19:58] red-agent: хуйнул кеш миддлвар
[23:20:01] slav0nic: хотя я покачто тож не прикручивал кеш
[23:20:08] red-agent: да прописал энжин
[23:20:22] red-agent: кака была - кака есть
[23:20:25] red-agent: потому я плюнул
[23:22:32] xa4a: хех http://www.johnsadowski.com/big_spanish_castle.php
[23:26:17] red-agent: slav0nic: 10х
[23:26:20] red-agent: кеш работает
[23:26:25] red-agent: в плане auth
[23:26:43] red-agent: (почти работает)
[23:26:45] slav0nic: только мемкешед лучше юзай
[23:26:46] slav0nic: ))
[23:26:53] red-agent: почему?
[23:27:04] slav0nic: да как бы классика, вроде лучше его ничего нет
[23:27:45] Лис: ну как бе конечно память быстрее винта работает
[23:28:32] red-agent: я имел ввиду перед locmem какое преимущество?
[23:30:16] slav0nic: локмем вроде работает для 1 процесса
[23:30:20] Лис: а, м..ну как бы если перезапутишь процес, кэш умрёт,а если с мемкэшом то нет (пока его не перезапустишь)
[23:30:23] slav0nic: если их 2, то будет нехохо
[23:30:32] Лис: а вообще наверно в мемкэше как то пооптимизированее
[23:30:39] Лис: да и вообще хз
[23:30:48] Лис: а, во, к мемкэшу по сети обращатся можно
[23:30:49] Лис: :)
[23:31:00] slav0nic: он глобальный)) как рнр
[23:35:59] slav0nic: red-agent, короче основное преимущество - если у тебя больше 2х инстансов то у каждого будет свой кеш, а с мемкешед 1 + мемкешед анверно быстрее (я хз =) )
[23:36:26] дейв: локмем жрет память пока не кончится. а мемкеш можно ограничить
[23:37:26] slav0nic: )
[23:37:38] slav0nic: часа весов с мемкешед перевесила
[23:38:49] red-agent: таки да, быстрее
[23:39:10] red-agent: теперь вместо 5 - 1 запроса
[23:39:11] red-agent: гг
[23:39:58] slav0nic: там есть ещё какая-та фиговина для мониторинга состояния кеша (me только слышал, но не юзал =) )
[23:41:42] red-agent: только демоны fcgi че-то память начали жрать
[23:41:45] red-agent: дохуя памяти
[23:41:59] slav0nic: сколько?
[23:42:12] red-agent: для вдса - много
[23:42:14] slav0nic: какой-то чувак показывал что у него 60-100 )
[23:44:01] red-agent: гыг
[23:44:06] red-agent: новость а админке добавляешь
[23:44:08] red-agent: и )(
[23:44:11] red-agent: кеш...
[23:44:12] slav0nic: ну
[23:44:16] slav0nic: сигналы повесь
[23:44:22] slav0nic: и удаляй объект с кеша В)
[23:44:26] slav0nic: или жди))
[23:44:34] red-agent: куда их вешать-то?
[23:44:37] slav0nic: я пока не курил, только джангу ковырял как она объект находит
[23:44:40] slav0nic: в модели
[23:44:45] xa4a: save()
[23:44:50] xa4a: наверно
[23:44:55] slav0nic: почитай вон Кошелев писал в блоге
[23:45:13] slav0nic: ток я по другому чуток хочу
[23:45:46] Лис: red-agent, на событие post_save
[23:45:54] slav0nic: угу на него
[23:47:12] Лис: шото типо такого
from django.core.cache import cache
def clear_blog_menu_cache(sender, instance, signal, *args, **kwargs):
cache.delete('blog_category_menu')
[23:47:30] Лис: dispatcher.connect(clear_blog_menu_cache, signal=signals.post_save, sender=Post)
dispatcher.connect(clear_blog_menu_cache, signal=signals.post_delete, sender=Post)
[23:47:34] red-agent: до задницы кароче
[23:47:38] red-agent: слишком много памяти жрет
[23:47:40] red-agent: втопку
[23:47:47] Лис: что моного жрёт?
[23:47:49] Лис: мемкэш?
[23:47:58] Лис: скока сконфигурируешь, стока и будет
[23:48:00] slav0nic: только там есть механизм заненсения объекта в кеш, и метод для определения его id чтоли
[23:48:12] red-agent: нет
[23:48:13] Лис: у /me 64 метра стоит, и я там сессии храню :)
[23:48:21] red-agent: демоны fcgi с кешем
[23:48:26] slav0nic: Лис, многовато имхо
[23:48:37] slav0nic: red-agent, там есть файловые кеши ещё
[23:48:39] Лис: маловато!
[23:48:46] red-agent: Лис: eue
[23:48:52] Лис: под мемкэйш гигабайты отдают
[23:48:53] red-agent: если у вдса - 256 всего
[23:48:54] slav0nic: Лис, ну посчитай объём на 1 сессию и скока их туда влезет)
[23:49:04] red-agent: и 160-180 всегда забиты
[23:49:07] Лис: slav0nic, так не тока сессии там ведь можно хранить
[23:49:15] Лис: мне чисто впадлу что бы сессия дёргалась из БД
[23:49:16] Лис: :)
[23:49:29] slav0nic: ла эт верно имхо
[23:49:35] slav0nic: только наверно есть и бока)
[23:49:50] Лис: red-agent, ~170mb хавает fcgi?
[23:49:58] red-agent: угу
[23:49:59] slav0nic: вот вебпи мало озу хавает В) мой блог 10мб макс
[23:50:00] Лис: с locmem или memcachd?
[23:50:02] red-agent: 10 демонов
[23:50:06] red-agent: memcached
[23:50:07] slav0nic: а нах стока)
[23:50:12] slav0nic: там 1-2 хватит
[23:50:18] Лис: а,ну дак 10
[23:50:19] slav0nic: запусти в тредед
[23:50:20] red-agent: 10 - это макс
[23:50:20] Лис: канешна
[23:50:22] Лис: хехе
[23:50:30] red-agent: slav0nic: треды сосут
[23:50:35] red-agent: не безопасно
[23:50:44] Лис: с флупом вообще пипец как сосут
[23:50:49] slav0nic: у тебя там конкурент вконтакте чтоли? 3 запроса в сек это норм
[23:50:51] slav0nic: имхо
[23:51:09] slav0nic: /me заводил блог на 79сек, без кеша В)
[23:51:19] slav0nic: *req/s
[23:52:03] Лис: 170/10 =17
[23:52:25] Лис: кул
[23:52:25] Лис: у меня 30мб
[23:52:25] Лис: один демон
[23:52:25] Лис: :)
[23:52:25] slav0nic: эт мало
[23:52:28] Лис: но там понапихато конечно
[23:52:30] slav0nic: 17 мало
[23:52:38] Лис: так да, я и говорю
[23:52:54] Лис: 17, это навернео пустой проект стока хавает (сама джанга)
[23:52:57] Лис: :)
[23:53:08] Лис: хотя не, помоему пустая джанга 10 жрёт
[23:53:37] Лис: /me пошпилил в диабло2
[23:53:43] slav0nic: у меня вебпи с алхимией внутри больше 9-10 не хавает)
[23:53:43] Лис: на год вперёт :)
[23:54:07] Лис: вебпи твоя вообще наверно два байта жрёт
[23:54:11] slav0nic: )
[23:54:24] Лис: а сотальные 10 алхимия зохавала
[23:54:29] slav0nic: над на питон юа пиарнуть ещё разок) там вики вышла в 161 строку)
[23:54:45] slav0nic: да вебпи норм, для ряда вещей
[23:54:54] slav0nic: хотя черри тож интересная штука
[23:54:58] slav0nic: но лень курить и незачем
[23:55:15] slav0nic: тоскавиджетс наерно круче джанговских форм)
[23:55:29] slav0nic: тока ж доки....
[23:55:47] slav0nic: видимо с джангой и тг2 выйдет
[23:55:52] Лис: http://www.artlebedev.ru/kovodstvo/idioteka/2008/07/09/
[23:56:04] Лис: и скилеты вокруг знамени
[23:56:06] Лис: :D
[23:56:38] slav0nic: кстати дизайнера который рисует нам двд бокси на артлебеде не обосрали а похвалили%) там такого мало
[23:57:17] Лис: шо рисует?
[23:57:33] slav0nic: хайтеш стиль
[23:57:39] slav0nic: коробки для дисков рисовал)
[23:57:40] slav0nic: http://www.sadavan.com/
[23:57:47] slav0nic: и хак сайты многие)
[23:57:48] red-agent: кароче
[23:57:54] red-agent: что самое смешное
[23:58:00] red-agent: без кеша, хоть и больше запросов - получается быстрее
[23:58:16] slav0nic: red-agent, а сколько их?
[23:58:21] slav0nic: запросов то
[23:58:50] red-agent: ну, на главной щас 17
[23:59:02] red-agent: туда выводятся последние посты, новости
[23:59:03] red-agent: теги
[23:59:06] red-agent: самые популярные
[23:59:10] red-agent: кол-во всего этого добра
[23:59:14] red-agent: + релизы еще
[23:59:18] red-agent: в принципе - вменяемо
[23:59:25] slav0nic: более чем чё ты паришься
[23:59:53] slav0nic: чувак помню имея 10запросв в сек утверждал что под соц сеть номральную пойдёт)