我正在Django应用程序中实现ImageKit,据我所知,我已经正确设置了所有内容。当我运行命令

$python manage.py ikflush main


该命令似乎可以正常运行,但似乎没有任何反应。没有图像被调整大小或存储,无法访问。

main.models.py:

class ProductImage(models.Model):
    product = models.ForeignKey(Product)
    image = models.CharField(max_length=255, null=True, blank=True)
    original = models.ImageField(upload_to='uploads/product-images/zoom/')

    class IKOptions:
        spec_module = 'main.specs'
        cache_dir = 'uploads/cache'
        image_field = 'original'


main.specs.py:

from imagekit.specs import ImageSpec
from imagekit import processors

class ResizeSmall(processors.Resize):
    width = 230
    height = 289
    crop = False

class SmallImage(ImageSpec):
    access_as = 'small_image'
    pre_cache = True
    processors = [ResizeSmall]


在模板中:(不打印任何内容)

{% for image in images %}
    {{ image.small_image }}<br />
{% endfor %}


有谁对如何调试有任何想法吗?我真的想为此使用ImageKit,但是我以前从未实现过。提前致谢!

最佳答案

您的ProductImage模型需要从imagekit.models.ImageModel中继承,而不是从models.Model中继承。

关于python - Django中的ImageKit,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/3366952/

10-12 18:36