无对应的验证规则!一般是哪里出了问题?

#1 tmd

无对应的验证规则!
  • C:\wamp\www\SpeedPHP\Core\spModel.php on line 504
499.
if(isset($args[1]) && is_array($args[1])){
500.             $this->verifier["rules"] = $this->verifier["rules"] + $args[1]["rules"];
501.             $this->verifier["messages"] = isset($args[1]["messages"]) ? ( $this->verifier["messages"] + $args[1]["messages"] ) : $this->verifier["messages"];
502.
}
503.
if(is_array($obj->addrules) && !empty($obj->addrules) ){foreach($obj->addrules as $addrule => $addveri)$this->addrules($addrule, $addveri);}
504.
if(empty($this->verifier["rules"]))spError("无对应的验证规则!");

505.
return is_array($args[0]) ? $this->checkrules($args[0]) : TRUE; // TRUE为不通过验证
506.
}
507.
508.
/**  
509.
* 加入附加的验证规则

  • C:\wamp\www\SpeedPHP\Core\spModel.php on line 270
265.
* 魔术函数,执行模型扩展类的自动加载及使用
266.
*/
267.
public function __call($name, $args)
268.
{
269.
if(in_array($name, $GLOBALS['G_SP']["auto_load_model"])){
270.
return spClass($name)->__input($this, $args);

271.
}elseif(!method_exists( $this, $name )){
272.             spError("方法 {$name} 未定义");
273.
}
274.
}
275.

2011-01-30 09:57:26

#2 jake

从上面 http://speedphp.com/bbs/thread-1243-1-1.html 来说,就是

'between' => 'isbetween', 这个对应,名字或方法不对。

2011-01-30 11:39:33

#3 tmd

回复 2 jake


    找了整整一夜,跟踪到spModel类内部一步一步打印调试,最后终于弄好了,也不知道怎么好的。倒是又熟悉了一遍底层代码的实现,发现spModel类里面还有很多手册上没有提到的函数啊,ms都很强大。sp的架构确实很不错,就是手册有点滞后,许多功能只有分析源码才看得到。

2011-01-30 14:18:59

#4 jake

:handshake 年后会努力搞好手册,另外还计划能搞个《SpeedPHP框架深度解析》把整个框架全部的过程都写出来,至少让有部分基础的PHPer就可以整个明白框架的代码。

2011-01-30 14:41:04

#5 tmd

回复 4 jake


    老大很辛苦啊!还要开发新版本,还要回答论坛上的问题。恐怕还是用的业余时间搞这些吧?太令我感佩了!

2011-01-30 15:13:35