Настало время указать на ключевой момент схемы URL и Django в целом: принцип свободного связывания. Просто примем, что свободное связывание является неким подходом к разработке программного обеспечения, который отражает важность создания связываемых компонентов. Если два компонента кода свободно связаны, тогда изменения, сделанные в одном компоненте отразятся незначительно или совсем не отразятся на коде другого компонента.
Схема URL Django является хорошим примером применения такого принципа на практике. В Django-приложении определения URL и функций представления, которые они вызывают связаны свободно. Следовательно, решение о том, какой URL должен соответствовать данной функции и реализация самой функции располагаются в двух разных местах. Это позволяет вам отключать один компонент приложения без влияния на остальные.
Для примера рассмотрим наше представление
current_datetime. Если нам потребуется
изменить URL в приложении, скажем, переименовать его из
/time/ в /current-time/, нам достаточно будет сделать быстрое изменение в файле привязок, не беспокоясь о самом представлении. Аналогично, если нам потребуется изменить функцию представления — как-то изменить логику её работы — мы можем сделать это без
внесения изменений в URL, к которому привязана данная функция.
Продолжая, если нам потребуется разделить функционал данного
представления между несколькими URL, мы
сможем легко реализовать это, отредактировав схему URL, не внося
изменений в код представления. В данном примере, наше
представление current_datetime доступно по
двум URL:
urlpatterns = patterns('',
('^hello/$', hello),
('^time/$', current_datetime),
('^another-time-page/$', current_datetime),
)
Схема URL и представления являются примером свободного связывания в действии. Мы продолжим рассматривать на примерах этот важный подход в течение всей книги.
| Пред. | Уровень выше | След. |
| Ваше второе представление: Динамическое содержимое | Начало | Ваше третье представление: Динамические URL |
0 комментариев | Оставьте комментарий