Аргументы представления, принимаемые по умолчанию Django
Еще один удобный прием - определение значений по умолчанию для аргументов представления. Тем самым мы сообщаем представлению, какое значение параметра следует использовать, если оно явно не задано при вызове функции. Например:
# urls.ру
from django.conf.urls.defaults import * from mysite import views
urlpatterns = patternsC
(г’"blog/$’, views.page), (r’~blog/page(?P<num>\d+)/$’, views.page),
)
# views.py
def page(request, num=,1′):
tt Выводит страницу записей в блоге с номером num.
и …
Здесь оба образца URL указывают на одно и то же представление - views. page, - но в первом никакие части URL не сохраняются. Если будет обнаружено совпадение с первым образцом, то при вызове функции для аргумента num будет использовано значение по умолчанию - ‘ 1’. Если же со вторым, то функции будет передано сохраненное значение num.
Примечание —————————————————————————-
Мы специально определили в качестве значения аргумента по умолчанию строку "Г, а не целое число 1, потому что сохраняемое значение всегда представлено строкой.
Как отмечалось выше, такой прием часто применяется в сочетании с конфигурационными параметрами. В следующем примере мы немного улучшим код примера из раздела «Конфигурационные параметры представления», определив значение по умолчанию для аргумента
template_name:
def my_view(request, template_name=’mysite/my_view.html’): var = do_something()
return render_to_response(template_name, {‘var’: var})
Источник: Головатый А., Каплан-Мосс Дж. Django. Подробное руководство, 2-е издание. - Пер. с англ. - СПб.: Символ- Плюс, 2010. - 560 е., ил.
Похожие посты:
- Изменение высоты строки (межстрочного интервала) в тексте (0)
- Изменение стиля маркеров списка или удаление маркеров (0)
- Удаление отступов от края страницы (0)
- Выбор единиц измерения размера шрифтов:пикселы, пункты, пики или что-то другое (0)
- Изменение вида элементов формы с помощью CSS (0)
- Отображение строкового элемента как блочного, и наоборот (0)
- Шаблон проектирования MVC (0)