ФорумПрограммированиеPythonDjango → Почему регулярки в URLCONF?

Почему регулярки в URLCONF?

  • adw0rd

    Сообщения: 22959 Репутация: N Группа: в ухо

    Spritz 17 сентября 2010 г. 19:50

    Вот что в первую очередь мешает в Django - это urlconf на регулярках


    Честно скажу, прочитал — крайне удивился. Уж что-что, а это лично мне всегда казалось очень здравой и удобной идеей. Поэтому не знаю, правильно ли я понял саму претензию… Но тем не менее.

    Мне кажется, что если говорить о как таковом наличии отдельного маппера между URL'ами и логикой, то проще регулярок тут ничего не придумать. Они и универсальны, и достаточно просты в тех случаях, в которых реально используются в urlconf. Зачем городить что-то новое? Я серьезно считаю, что это "в доску" просто:

    (r'^client/(\d+)/profile/$', views.client)


    Еще есть мнение, что маппер вообще не нужен. Что URL можно составлять автоматически из названий объектов и методов, как это сделано в CherryPy и, если я не отстал от жизни, RoR. Но вот это, на самом деле, зло. Во-первых, потому что связывает схему URL с внутренней структурой софта и не позволяет ее свободно менять. А во-вторых, потому что не дает создать URL'ы, четко соответствующие пользовательской модели программы, а вместо этого выставляют наверх модель ее реализацию, которая пользователю чужда и, соответственно, смысл URL как одного из инструментов пользовательского интерфейса теряется.


    http://softwaremaniacs.org/blog/2007/01/24/django-defense/ (пост старый, но про именно этот момент все верно и актуально)
    https://smappi.org/ - платформа по созданию API на все случаи жизни
  • adwo

    Сообщения: 913 Репутация: N Группа: Джедаи

    Spritz 17 сентября 2010 г. 19:56, спустя 6 минут 46 секунд

    Мне нравится. Довольно универсально и вообще я регулярки люблю. А в тех же рельсах, как только ты создаешь что-то сложнее гостевой книги, все равно прийдется писать урлы ручками. Ты же не будешь использовать /users_sessions/new? Логично будет прописать этот url, как /login/ или /signin/
  • technobulka

    Сообщения: 4540 Репутация: N Группа: Джедаи

    Spritz 17 сентября 2010 г. 22:14, спустя 2 часа 17 минут 12 секунд

    чет мне кажется, что adw0rd сам с собой разговаривает))
    Высокоуровневое абстрактное говно
  • Troy

    Сообщения: 2532 Репутация: N Группа: Джедаи

    Spritz 18 сентября 2010 г. 11:16, спустя 13 часов 2 минуты 44 секунды

    Stasovsky, он на питон уже 30% пыховчян перевел

Пожалуйста, авторизуйтесь, чтобы написать комментарий!