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

Joel Quinet bock.catherine at gmail.com
Ven 29 Mai 08:28:42 CEST 2009


Mon problème est résolu ce fonctionne, merci a toi David, je n'avais pas 
fait attention qu'il manquait les "" dans le html ;-) avec les "" ca 
fonctionne.

Néanmoins, je trouve le solution de David plus élégante et je vais 
essayer de la mettre en place dans les jours qui viennent.

Pour Ludovic,
Voici le code qui permet de genere la vue
def index(request): #Define our function, accept a request

    items = 
todo.objects.filter(completion_status__lt=100).order_by('priority')#[:20]

    return render_to_response('todo_index.html', {'items': items}) 
#Responds with passing the object items (contains info from the DB) to 
the template index.html


Merci beaucoup a vous deux pour votre aide.

Joel



David Larlet wrote:
> 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
>
> _______________________________________________
> django mailing list
> django at lists.afpy.org
> http://lists.afpy.org/mailman/listinfo/django



Plus d'informations sur la liste de diffusion django