Пыха всегда с тобой

Добро пожаловать на Пыху!

Логин:
Пароль:
 

Нет прописки? Зарегистрируйся!

Новости

Пыха переехала на новый сервер, ура!

Краснодарское время: 25 Май, 2012, 07:07:15

Страниц: 1 2 [3]
Печать
Автор Тема: помагите чайнику  (Прочитано 353 раз)
0 Пользователей и 3 Гостей смотрят эту тему.
adw0rd    ↓ 
29 Ноябрь, 2011, 09:08:41
НЕ ХУЕТА! ХУЕТА!

эдво
Группа: в ухо

Карма: не нужна
Сообщений: 17633
Сила слова: 1.67



adw0rd, как дела? хули трубку не берешь, как мудак?
ты мне звонил?
Спустя 23 секунды добавил
наберу тебя сегодня
 
ты мне не перезвонил
Записан

Python, Django, Git, Emacs, Nginx, MySQL, SphinxSearch, FreeBSD/Linux
Мой блог * Кинсбург * Либург * Я на GitHub
adw0rd    ↓ 
29 Ноябрь, 2011, 09:38:14 , спустя 29 минут 33 секунды
НЕ ХУЕТА! ХУЕТА!

эдво
Группа: в ухо

Карма: не нужна
Сообщений: 17633
Сила слова: 1.67


Ну на самом деле я вообще не понимаю зачем тебе так делать (я о втором твоем кейсе), я бы делал так как всегда:
/countries/russia/
/cities/moscow/
а не кашу
Спустя 1 минуту 12 секунд добавил
Но теперь меня самого заинтересовало как влиять на url dispatcher, сейчас копаю сорцы
думаю решение будет вида:
 
def func(request):
   raise ViewDoesNotExists()
вообщем потрейсил я django.core.urlresolvers и core.handlers.base, там сразу по регулярки матчится (См. django.core.urlresolvers.RegexURLResolver.resolve()) и считается что обязательно должен обработчик его обработать (См. core.handlers.base.BaseHandler.get_response()), ну и там цепь событий по получению response изовсех доступных мест:
* middleware (request_middleware, view_middleware)
* функция-обработчик (callback) а если поймает Exception, то попробует получить респонс у exception_middleware
* Если вернешь объект с атрибутом render и он callable, то он дернет template_response_middleware и запустит response.render()
* Ну а если ничего не вернешь, то произойдет один из Exception:
** http.Http404 -> resolver.resolve404()
** exceptions.PermissionDenied -> http.HttpResponseForbidden()
** SystemExit -> raise
** И напоследок core.handlers.base.BaseHandler.handle_uncaught_exception()
* response_middleware
 
короче, нативной нельзя сейчас переключится в другой url, по крайней мере я не нашел способа
можно конечно применить манкипатчинг, или через middleware рулить
Записан

Python, Django, Git, Emacs, Nginx, MySQL, SphinxSearch, FreeBSD/Linux
Мой блог * Кинсбург * Либург * Я на GitHub
vasa_c    ↓ 
29 Ноябрь, 2011, 09:56:37 , спустя 18 минут 23 секунды
НЕ ХУЕТА! ХУЕТА!

Группа: в ухо

Карма: 81
Сообщений: 2459
Сила слова: 3.29

adw0rd, спасибо!
Записан

phpdude    ↓ 
29 Ноябрь, 2011, 10:02:59 , спустя 6 минут 22 секунды
НЕ ХУЕТА! ХУЕТА!

я - ЭМО
Группа: в ухо

Карма: 345
Сообщений: д-о-х-у-я!
Сила слова: 1.66

додразните! тоже питоном займусь :)
Записан

забанен. могу забанить других, пишите в личку
BEER. Helping ugly people have sex since 1862.
Абырвалг    ↓ 
29 Ноябрь, 2011, 11:57:10 , спустя 1 час 54 минуты 11 секунд
НЕ ХУЕТА! ХУЕТА!

PHP Infected, симфоеб, маконенавистник
Группа: Джедаи

Карма: 80
Сообщений: 6096
Сила слова: 1.31

phpdude, ну и хуле там такого в нем привлекательного?
Записан

PHP does the job since 1995
Пожалуйста, не надо делать двойные клики по ссылкам. Это создает избыточную нагрузку на сервер
adw0rd    ↓ 
30 Ноябрь, 2011, 02:57:46 , спустя 3 часа 36 секунд
НЕ ХУЕТА! ХУЕТА!

эдво
Группа: в ухо

Карма: не нужна
Сообщений: 17633
Сила слова: 1.67


phpdude, ну и хуле там такого в нем привлекательного?
да, все хочу написать статью "что именно хорошего в питоне и почему я не хочу php", как напишу так сразу ссылку сюда кину
Записан

Python, Django, Git, Emacs, Nginx, MySQL, SphinxSearch, FreeBSD/Linux
Мой блог * Кинсбург * Либург * Я на GitHub
Страниц: 1 2 [3]
Печать
 

Перейти в: