forked from CroceRossaItaliana/jorvik
-
Notifications
You must be signed in to change notification settings - Fork 0
Creare una pagina
Alfio Emanuele edited this page Aug 17, 2015
·
3 revisions
Questa pagina vuole servire come spunto sul come creare una pagina in jorvik
.
-
Identificare il modulo appropriato (i.e.
base
,anagrafica
,attivita
, etc.) - Scegliere un nome per la funzione della vista. Questo deve essere coerente con lo stile attuale. Alcune note:
- Preferire
normativa_privacy
anormativaPrivacy
-
Creare la funzione in
<modulo>/viste.py
- "Decorare" la nuova funzione con uno dei tre seguenti decoratori, usando la corrispettiva firma:
-
@pagina_pubblica
per le pagine per utenti registrati e non registrati.@pagina_pubblica def funzione(request, me=None): """ :param request: L'oggetto della richiesta. :param me: L'oggetto Persona dell'Utente identificato, o None se non identificato. """
-
@pagina_anonima
per le pagine per utenti non registrati@pagina_anonima def funzione(request): """ :param request: L'oggetto della richiesta. """
-
@pagina_privata
per le pagine per utenti registrati@pagina_privata def funzione(request, me): """ :param request: L'oggetto della richiesta. :param me: L'oggetto Persona dell'Utente identificato. """
Permessi? Fare riferimento alla sezione Permesso di Accesso (Protezione Pagine) per limitare l'accesso sulla base delle deleghe.
- Assicurarsi che la funzione restituisca in uno dei seguenti formati accettati:
-
Template senza contesto
return 'base_normativa_privacy.html'
-
Template con dati
contesto = { variabile: 42, persona: tizio, nome: tizio.nome_completo } return 'base_normativa_privacy.html', contesto
-
Redirect
return redirect('/utente/qualche-pagina/')
return redirect(ERRORE_PERMESSI)
-
(Avanzato) Uno stream o altra risposta HTTP.
-
Creare il template
<modulo>/templates/<modulo>_<pagina>.html
e riempirlo di contenuto (per un esempio base vederebase/templates/base_informazioni.html
. - Associare un URL
-
Aprire
jorvik/urls.py
-
Aggiungere una riga a
urlpatterns
nel formato:url(r'^QUINOMEPAGINA/$', '<modulo>.viste.<pagina>'),
- Yeah!