我正在使用Django的網站上工作。Filter()關鍵字必須是字符串
我創建了兩個模型,一個用於照片,另一個用於一個人。
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)
在我看來,我想要的是能夠標記照片上的人。
我的問題是,我可以創建新的照片與管理,但當我要修改/查看(http://127.0.0.1:8000/admin/module/photo/1/)我得到這個錯誤:
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
和我我無法理解它。
非常感謝您的回覆,它解決了問題!你是個天才! 我對related_name的理解不正確。我將回到文檔。 下一次我會給回溯;) 非常感謝 – trnsnt