我有一个模特:
class UserProfile(models.Model):
thumbnail = models.ForeignKey(Gallery, blank=True, null=True)
和我的画廊:
class Gallery(models.Model):
media_file = models.FileField(upload_to='somewhere)
def __str__(self):
return self.media_file
在我看来:
media = Gallery.objects.create(media_file=form.cleaned_data['thumbnail'])
user_profile = UserProfile.objects.get(user=someuser)
user_profile.thumbnail = media
user_profile.save()
当我查看管理员和用户个人资料模型时,我没有在缩略图中看到图片网址。我只看到Media Object
。我怎样才能获得图片网址?
谢谢
答案 0 :(得分:2)
这是因为self.media_file
将为您提供文件对象而不是保存文件的URL。更改代码以返回文件的url
。最简单的可能是 -
def __str__(self):
return self.media_file.url
在这里阅读 -
https://docs.djangoproject.com/en/1.8/ref/models/fields/#filefield https://docs.djangoproject.com/en/1.8/ref/models/fields/#django.db.models.fields.files.FieldFile.url