1

我想为所有继承自imagekit.specs.ImageSpec.

这个想法是允许管理界面的用户选择要添加到图片的 ImageSpec。

IE:

class Display(ImageSpec):
    pre_cache = True
    increment_count = True
    processors = [ResizeDisplay,]

class SingleDisplay(ImageSpec):
    pre_cache = True
    increment_count = True
    processors = [SingleDisplayResize]

class Reflection(ImageSpec):
    increment_count = True
    processors = [ResizeDisplay, ReflectionProcessor]

class SingleDisplayReflection(ImageSpec):
    increment_count = True
    processors = [SingleDisplayResize, ReflectionProcessor]

导致下拉列表“显示,单显示,反射,单显示反射”

4

1 回答 1

2

好吧,类似下面的内容将为您提供文件中定义的所有 ImageSpec 子类的列表:

def subclassfilter(x, baseclass):
    return x is not baseclass and isinstance(x, type) and issubclass(x, baseclass)

subclasses = [c for c in locals().values() if subclassfilter(c, ImageSpec)]

然后,您可以从列表__name__中每个类的属性生成选择subclasses列表。

于 2009-11-02T17:37:25.867 回答