2009-07-14 15 views
23

Desidero creare una pagina statica che verrà mostrata all'utente solo se lui/lei fa clic su un collegamento fornito in uno dei miei modelli. Posso farlo creando una pagina Python da sola e chiamandola, ma voglio che venga chiamata da Django. L'interfaccia utente dovrebbe essere costruita usando solo l'API Django.Pagina statica di Django?

Qualche suggerimento?

+0

Si può elaborare un po '? Per esempio. è il contenuto della pagina statica richiesta per essere nel database o è possibile che sia in un file? Solo gli utenti che hanno effettuato l'accesso possono accedere alla pagina statica? –

risposta

11

Intendi qualcosa come lo flatpages app di Django? Fa esattamente quello che descrivi.

2

Se si desidera creare una pagina statica, lo flatpages è una buona scelta. Ti permette di creare facilmente contenuti statici. La creazione di contenuto statico non è più difficile della creazione di una vista.

48

Ignorando le visualizzazioni per il rendering di un modello statico, aggiungere questa riga in "urls.py". Per esempio "Chi siamo" pagina potrebbe essere

(r'^about', 'django.views.generic.simple.direct_to_template', {'template': 'path/to/about_us.html'}), 
+0

grazie funziona è solo necessario – ha22109

+2

Una semplice soluzione per l'introduzione di pagine flat è eccessivo –

+6

Le viste generiche basate su funzioni sono state ritirate da Django 1.5 in poi. Invece, usa le viste basate sulla classe: https://docs.djangoproject.com/en/1.5/topics/class-based-views/ –

49

Con il punto di vista di classe a base di versioni più recenti Django, si può utilizzare questo in urls.py:

from django.views.generic import TemplateView 
url(r'^about', 
    TemplateView.as_view(template_name='path/to/about_us.html'), 
    name='about'), 
+0

Grazie, questa risposta ora sostituisce Rubayeets. – Linef4ult

Problemi correlati