是否有接口可以动态增加字段的验证规则?

我的项目里面设计了一个 Node 模型,

然后设计了一些派生模型如 ActionNode, ExternalLinkNode, FolderNode 等

利用重写 instantiate() 做到单表继承功能~

在编辑Node的视图中,我利用 renderPartial(’_partial’) 判断不同节点类型使用不同的表单字段内容

遇到问题是,不同的节点类型,会有不同的验证规则,我是否能够动态定义这些规则呢?

如果说,在model中的rules去定义各种 scenario的话,会觉得过于繁琐了。不知道是否有更好的方法推荐?

你的验证规则应该是写在具体的模型里的啊。另外,rules()是一个函数,你可以任意实现这个函数返回rule数组(这也是为什么用函数而不是变量来表达rule的一个主要原因。)

嗯,我想是因为我还没有完全适应yii的开发模式~造成一些地方的困扰 :)