#1 jake
在刚开始使用SpeedPHP的时候,有些朋友会遇到以下情况:
提示“请检查是否控制器类与数据模型类重名”?
这是因为在SpeedPHP中,没有限制控制器(controller)和模型(model)的命名规则,所以有时候,会产生控制器类和模型类重名的情况,比如说在控制器guestbook.php中:
class guestbook extends spController
{
function index(){
$gb = spClass('guestbook');
$result = $gb->find(array('id'=>2));
dump($result);
}
}
就会出现该提示,问题出在:$gb = spClass('guestbook'); 开发者可能因为这个guestbook是model内的guestbook数据库模型类,其实不是。由于本身控制器guestbook就已经加载,所以spClass会直接使用当前的控制器guestbook,而不会去寻找model内的guestbook类。
解决的方法其实很简单,这里我们提供一个简单的命名规则给大家。
- model内的数据库模型类,都加上前缀,比如说lib_,或者m_等等。
这里的命名规则,是“建议使用”,并非“强制使用”。我们知道许多的开发团队都有自己的命名规则,所以SpeedPHP中几乎是没有规定任何的命名规则,让大家可以按照自己喜欢的规则来开发。
class guestbook extends spController
{
function index(){
$gb = spClass('lib_guestbook');
$result = $gb->find(array('id'=>2));
dump($result);
}
}
2012-08-04 13:35:32