这里的 Meta class 主要是有一个作用:避免污染 CommentForm 的属性名字空间。这个设计可能是出自 django。
在 peewee 的文档中也有说道 [这个](
http://docs.peewee-orm.com/en/latest/peewee/models.html#model-options-and-table-metadata)。补充一下它的原理:forms.ModelForm 这个类应该是有自己的元类 (metaclass),元类里面有黑魔法。
比如你可能会写这样一段代码:
```
form = CommentForm(xxx)
print(
form.name)
```
如上这个例子,form 对象为什么会有 name 属性呢?这就是它的元类的黑魔法
所以在这个例子中,LZ 问 “ class 的 class 有什么用” ,感觉有点没有问道点子上。
------------------
不过,我们平常其实也有可能把一个 class 写在一个 class 里面,这就非常简单,类似于私有变量,不希望别的模块引用这个 class。