Menu (menu)¶
Założenia¶
Moduł zapewnia mechanizm menu nawigacyjnego dla poszczególnych stron internetowych. Odnośniki mogą być:
- odnośnikami wewnętrznymi, a wówczas weryfikowana jest zgodność adresów z aplikacją, choć to nie znaczy, że pod podanym adresem zawarta jest treść
- odnośnikami zewnętrzne https://` lub
http:
, - odnośniki e-mailowe
mailto:
.
Architektura¶
Model¶
-
class
petycja_norweskie.menu.models.
Element
(id, created, modified, name, url, parent, visible, position)[źródło]¶ Parametry: - id (AutoField) – Id
- created (AutoCreatedField) – Utworzony
- modified (AutoLastModifiedField) – Zmodyfikowany
- name (CharField) – Nazwa
- url (CharField) – Url
- parent_id (ForeignKey to
petycja_norweskie.menu.models.Element
) – Rodzic - visible (BooleanField) – Zaznacz, aby oznaczyć szablon jako publicznie widoczny
- position (SmallIntegerField) – Pozycja
Panel administracyjny¶
Procesorzy kontekstu¶
-
petycja_norweskie.menu.context_processors.
menu
(request)[źródło]¶ A context processor which provide menu in
menu
template variable.Parametry: request (HttpRequest) – A django standard request object Example
Menu render is very simple and effective. For example:
{% if menu %} <ul> {% for el in menu %} <li> <a href="{{el.url}}">{{el}}</a> {% if el.children_set %} <ul> {% for child in el.children_set %} <li><a href="{{child.url}}">{{child}}</a> {% endfor %} </ul> {% endif %} </li> {% endfor %} </ul> {% endif %}