Уведомления

Группа в Telegram: @pythonsu

#1 Окт. 19, 2013 10:42:45

LunevNikita
Зарегистрирован: 2013-10-18
Сообщения: 7
Репутация: +  0  -
Профиль   Отправить e-mail  

RESTful API + Python (web-service)

В общем, товарищи, решил я использовать django rest framework.

Офлайн

#2 Окт. 19, 2013 20:08:20

ZZZ
От: Москва
Зарегистрирован: 2008-04-03
Сообщения: 2161
Репутация: +  26  -
Профиль   Адрес электронной почты  

RESTful API + Python (web-service)

Singularity, код будет трудно сейчас выципить, но я думаю о том, чтобы выделить некоторые кусочки, с этим связанные, в опенсорс. Если коротко, то в пирамиде есть траверсинг. Это такой себе обход дерева ресурсов, в зависимости от урла. Т.е. там нет (есть, но мы не используем) захардкоженного списка урлов типа urls.py в джанге. И это получается прямо реально красиво… Получается, что у тебя есть три набора слабо связанных сущностей: модели, ресурсы и вьюхи. На REST ложится просто идеально.



Офлайн

#3 Окт. 19, 2013 20:26:35

FishHook
От:
Зарегистрирован: 2011-01-08
Сообщения: 8312
Репутация: +  568  -
Профиль   Отправить e-mail  

RESTful API + Python (web-service)

ZZZ, честно говоря, не понимаю, в чем преимущества траверсала перед джанговским роутингом в плане поднятия рестфул апи.

Если Вам не трудно, раскройте тему более подробно, пожалуйста.
Если можно с примерами.



Офлайн

#4 Окт. 19, 2013 21:07:49

ZZZ
От: Москва
Зарегистрирован: 2008-04-03
Сообщения: 2161
Репутация: +  26  -
Профиль   Адрес электронной почты  

RESTful API + Python (web-service)

FishHook, это довольно объёмная тема, так что да, мне трудно…
Преимущество лишь одно: нативнее. Мне всегда было непонятно, почему древовидную структуру урлов все описывают плоско… Попробуй и, быть может, ты всё поймёшь раньше, чем я сподоблюсь написать об этом. :-)



Офлайн

#5 Окт. 19, 2013 21:33:34

FishHook
От:
Зарегистрирован: 2011-01-08
Сообщения: 8312
Репутация: +  568  -
Профиль   Отправить e-mail  

RESTful API + Python (web-service)

ZZZ
FishHook, это довольно объёмная тема, так что да, мне трудно…Преимущество лишь одно: нативнее. Мне всегда было непонятно, почему древовидную структуру урлов все описывают плоско… Попробуй и, быть может, ты всё поймёшь раньше, чем я сподоблюсь написать об этом. :-)
Дело в том, что безо всяких костылей типа “django rest framework” я вполне себе пилю REST интерфейсы, юзая только роутинг из коробки Джанго.
Да, я не считаю Джангу и тем более её роутинг, панацеей. Например, мне не понятно, почему бы не передавать во view уже готовые объекты по pk, name … etc, а проверку прав и инстанциирование этих объектов осуществлять специальными функциями/классами - валидаторами на этапе роутинга. Джанго провоцирует на жирные контроллеры. Это плохо.
НО! При всей косности и общей дурости (да, меня дико бесят регекспы в путях, это дурь!) - Джанго ничуть не ущемляет возможностей для поднятия на ней REST-FULL API.



Офлайн

#6 Окт. 19, 2013 21:53:41

LunevNikita
Зарегистрирован: 2013-10-18
Сообщения: 7
Репутация: +  0  -
Профиль   Отправить e-mail  

RESTful API + Python (web-service)

Интересно.

Офлайн

#7 Окт. 20, 2013 11:31:54

ZZZ
От: Москва
Зарегистрирован: 2008-04-03
Сообщения: 2161
Репутация: +  26  -
Профиль   Адрес электронной почты  

RESTful API + Python (web-service)

FishHook
Дело в том, что безо всяких костылей типа “django rest framework” я вполне себе пилю REST интерфейсы, юзая только роутинг из коробки Джанго.
Это звучит как: я не пользуюсь для разведения огня спичками, потому что меня устраивает натирание двух палок. Django REST Framework действительно прекрасен и сильно облегчает жизнь.

FishHook
да, меня дико бесят регекспы в путях, это дурь!
Как же мало людей это понимают… Регекспы зло! :-)



Офлайн

#8 Окт. 20, 2013 14:37:45

ZZZ
От: Москва
Зарегистрирован: 2008-04-03
Сообщения: 2161
Репутация: +  26  -
Профиль   Адрес электронной почты  

RESTful API + Python (web-service)

FishHook
Например, мне не понятно, почему бы не передавать во view уже готовые объекты по pk, name … etc
Случайно вспомнил, что Django REST Framework так и делает… :-)



Офлайн

#9 Окт. 20, 2013 20:17:59

o7412369815963
От:
Зарегистрирован: 2009-06-17
Сообщения: 1986
Репутация: +  32  -
Профиль   Отправить e-mail  

RESTful API + Python (web-service)

ZZZ
FishHook
да, меня дико бесят регекспы в путях, это дурь!
Как же мало людей это понимают… Регекспы зло! :-)
Сложные регепсы, или вообще все? “/name/(.*)” к ним относится? Если да, то почему?

Офлайн

#10 Окт. 20, 2013 20:48:31

Lexander
От:
Зарегистрирован: 2008-09-19
Сообщения: 1139
Репутация: +  33  -
Профиль   Отправить e-mail  

RESTful API + Python (web-service)

Потому, что микроскопом по гвоздю с соответствующими затратами и скоростью ;)



Офлайн

Board footer

Модераторировать

Powered by DjangoBB

Lo-Fi Version