[afpy/django] Probleme d'affichage d'un id dans un template

David Larlet larlet at gmail.com
Jeu 28 Mai 22:51:59 CEST 2009


Bonjour,

Le 28 mai 09 à 22:43, Joel Quinet a écrit :

> Bonjour à tous,
>
> Je fait du python principalament pour des outils personnels, je  
> débute avec django egalement pour de outils personnels.
> Pour mes débuts, je me construit un petit gestionnaire de taches  
> pour le moment mon application contient une seule page me permettant  
> d'afficher les taches; j'ai également activé l'interface  
> d'administration de django.
> Dans un premier temps, je voudrait mettre un lien dans la pages des  
> taches me permettant d'acceder a l'interface d'administration de  
> cette taches pour pourvoir la mettre a jour.
> J'essaie donc de generer un lien dans mon template avec le code  
> suivant <TD> <center> <a href=/admin/todo/todo/ + {{ x.id }} + />  
> Edit </a> </center> </TD>.
> Mon probleme est que x.id reste vide dans le lien alors qu'il a bien  
> une valeur dans la base de données.

Il vaut mieux dans ce cas (et dans tous les cas où une URL doit être  
utilisée) avoir recours aux urls nommées. Il est assez simple de  
générer ce lien au niveau du modèle :

class MyModel(models.Model):
     @models.permalink
     def get_admin_url(self):
         return ('admin_%s_%s_change' % (self._meta.app_label,  
self._meta.module_name), [self.id])

Et ensuite dans les templates :
<p class="adminlink"><a href="{{ x.get_admin_url }}" title="Edit your  
object">Edit</a></p>

(avec du code html valide c'est mieux)

Bonne soirée,
David



Plus d'informations sur la liste de diffusion django