这是我在django的第一个项目,我在画廊中使用了照片,这很棒,我真的很喜欢。
但是有一件事我不明白,那就是我如何使用它的ImageModel?
我有一个博客应用程序,与在管理界面中创建的每一个新的博客帖子,我想上传一个图像,这是链接到该帖子。
from django.db import models
from tagging.fields import TagField
from tinymce import models as tinymce_models
from photologue.models import ImageModel
#import datetime
# Create your models here.
class Blog(models.Model):
title = models.CharField(max_length=150)
content = tinymce_models.HTMLField()
pub_date = models.DateTimeField(auto_now_add=True)
edit_date = models.DateTimeField(auto_now=True)
tags = TagField()
summary = models.CharField(max_length=30)
thumbnail = ImageModel()
def __unicode__(self):
return self.title上面的代码看起来并不起作用,实际上也不能做任何事情。
我一直在翻阅文档,谷歌等,并试图理解自己的照片来源,但我似乎不能让它像我想的那样工作。
发布于 2011-11-12 06:31:19
ImageModel是一个抽象类。你不能把它当做它自己使用。相反,您必须将其子类化:
class BlogImage(ImageModel):
pass
class Blog(models.Model):
...
thumbnail = models.ForeignKey(BlogImage, related_name='blogs')但是,ImageModel的主要目的是允许您使用额外的自定义数据创建一个照片模型,该模型的行为仍然类似于photologue的模型之一。photologue已经有了Photo,这是一个基于ImageModel的真实模型,如果你只需要默认设置,你可以使用它。
class Blog(models.Model):
...
thumbnail = models.ForeignKey(Photo, related_name='blogs')https://stackoverflow.com/questions/8100055
复制相似问题