Je travaille sur un site web avec Django.Les mots-clés de Filter() doivent être des chaînes
J'ai créé deux modèles, un pour la photo et l'autre pour une personne.
class Photo(models.Model):
photo = models.ImageField(upload_to = 'toto')
description = models.CharField(_('Description'), max_length = 250)
people = models.ManyToManyField('Person', related_name = _('Person'))
def display_img(self):
return u'<img src="%s" /> - %s - %s' % (self.photo, self.description, self.people)
display_img.allow_tags = True
class Person(models.Model):
name = models.CharField(_('Name'), max_length = 50)
Dans mon esprit ce que je veux est de pouvoir étiqueter des personnes sur une photo.
Mon problème est que je suis en mesure de créer une nouvelle photo avec le admin, mais quand je veux modifier/voir (http://127.0.0.1:8000/admin/module/photo/1/) Je reçois cette erreur:
Django Version: 1.4.1
Exception Type: TypeError
Exception Value:
filter() keywords must be strings
Exception Location: C:\Python26\Lib\site-packages\django\db\models\fields\related.py in get_query_set, line 543
et je Je ne suis pas capable de le comprendre.
Merci beaucoup pour votre réponse, ça résout le problème! Vous êtes un génie! Ma compréhension de related_name était incorrecte. Je vais revenir à la documentation. La prochaine fois je vais donner la retraçage;) Merci beaucoup – trnsnt