Le déplacement de direct_to_template à nouveau TemplateView dans Django
À la recherche de mise à jour de mon projet à la dernière version de django et ont trouvé que les points de vue ont un peu changé. En regardant la documentation, je vois qu'ils ont changé tous les génériques des trucs à la classe des vues basées sur les. Je comprends l'utilisation, pour la plupart, mais je suis confus quant à ce que je dois faire lors du retour d'un plus grand nombre d'objets de la vue. Une url peut ressembler à :
(r'^$', direct_to_template, { 'template': 'index.html', 'extra_context': { 'form': CodeAddForm, 'topStores': get_topStores, 'newsStories': get_dealStories, 'latestCodes': get_latestCode, 'tags':get_topTags, 'bios':get_bios}}, 'index'),
Comment puis-je convertir quelque chose comme ça dans ces nouveaux points de vue?
Vous devez vous connecter pour publier un commentaire.
Générique De Vue Sur La Migration décrit ce que les classe en fonction de la vue remplace ce. D'après la doc, la seule façon de transmettre extra_context est à la sous-classe TemplateView et de fournir votre propre get_context_data méthode. Voici une DirectTemplateView classe je suis venu avec que permet
extra_context
comme cela a été fait avecdirect_to_template
.À l'aide de cette classe de remplacer:
avec:
AttributeError at /pipe/data_browse/ 'DirectTemplateView' object has no attribute 'has_header' Request Method: GET Request URL: http://localhost:8000/pipe/data_browse/ Django Version: 1.5.2 Exception Type: AttributeError Exception Value: 'DirectTemplateView' object has no attribute 'has_header' Exception Location: /Library/Python/2.7/site-packages/django/utils/cache.py in patch_vary_headers, line 142 Python Executable: /usr/bin/python Python Version: 2.7.2
J'ai rencontré un problème avec Pykler de la réponse à l'aide de la DirectTemplateView sous-classe. Plus précisément, cette erreur:
Ce qui a fonctionné pour moi a été à la place de convertir toute la ligne comme ceci:
à ceci: