Skip to content
Alfio Emanuele edited this page Aug 17, 2015 · 3 revisions

Questa pagina vuole servire come spunto sul come creare una pagina in jorvik.

  1. Identificare il modulo appropriato (i.e. base, anagrafica, attivita, etc.)
  2. Scegliere un nome per la funzione della vista. Questo deve essere coerente con lo stile attuale. Alcune note:
  • Preferire normativa_privacy a normativaPrivacy
  1. Creare la funzione in <modulo>/viste.py
  2. "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.

  1. 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.

  1. Creare il template <modulo>/templates/<modulo>_<pagina>.html e riempirlo di contenuto (per un esempio base vedere base/templates/base_informazioni.html.
  2. Associare un URL
  • Aprire jorvik/urls.py

  • Aggiungere una riga a urlpatterns nel formato:

    url(r'^QUINOMEPAGINA/$', '<modulo>.viste.<pagina>'),
  1. Yeah!