2010-02-01 10 views
4

gars Hay, en PHP quand je veux charger une page differnet (rendre, avec toutes les variables en sortie) i utiliseraisvues multiples chargées dans un modèle

include 'mypage.php' 

Cela charger la page et rendre la sortie .

Comment faire quelque chose comme ça dans Django? Mon problème est que j'ai une "liste rapide" qui énumère un tas d'articles populaires. Je veux que cette liste apparaisse sur chaque page, même si je n'appelle pas l'objet.

des idées?

EDIT: La vue est appelée shop.app.popular_items

+0

Je me demande si la bonne réponse à cette question est vraiment l'héritage d'un modèle avec une balise d'inclusion. Pensées? –

Répondre

1
+1

Le processeur de contexte ne vous donne que les variables. Vous devrez toujours gérer la présentation quelque part, de sorte que le processeur placera automatiquement les valeurs dans le contexte, mais vous devrez placer le bon code de modèle dans tous vos modèles, ou l'inclure. C'est pourquoi j'aime mieux les tags Inclusion ("Explicit is better than implicit"). –

2

Edit:

Après la réponse de Daniel et que vous avez dit que vous voulez avoir sur chaque page,
La réponse de becomingGuru est probablement la meilleure solution.


Ceci n'appartient pas à la vue (si vous ne voulez pas l'afficher en tant que page autonome).

Cela devrait aller dans un custom template tag.

1

Pour répondre à votre question concernant l'utilisation des processeurs de contexte et l'utilisation des balises d'inclusion, rappelez-vous que les processeurs de contexte sont exécutés sur chaque rendu de gabarit. Donc, ils ne devraient être utilisés que lorsque vous savez que vous aurez toujours besoin de la valeur.

Questions connexes