小白菜鸟请教:自动验证和自动完成失效

浏览:406 发布日期:2015/08/13 分类:求助交流 关键字: 自动验证 自动完成
已经解决,控制器对应代码修改为:            if($About->create()){ //加上这行
                if($About->update()!==false){
                    $this->success('操作成功!');
                } else {
                    $this->error('操作失败!');
                }
            }else{//加上这行
                $this->error($About->getError());//加上这行
            }//加上这行
创业吧:http://www.site8.cn/
麻烦前辈帮我看看错误在哪里,如何改正(提示操作失败):

1、数据库表:前缀_about(字段:id、title、addtime)

2、控制器:AboutController.class.php<?php
namespace Home\Controller;
use Think\Controller;
class AboutController extends Controller{

    //添加或编辑信息
    public function edit($id=0){
    
        $About = D('About');
        if(IS_POST){
                if($About->update()!==false){
                    $this->success('操作成功!');
                } else {
                    $this->error('操作失败!');
                }
        }else{
            $this->display();
        }            
    }    
}

?>
3、模型:AboutModel.class.php<?php
namespace Home\Model;
use Think\Model;
class AboutModel extends Model {

    // 自动验证
    protected $_validate=array(
        array('title','require','请输入标题'),
    );
    // 自动完成
    protected $_auto=array(
        array('addtime','time',1,'function'),
    );

    //信息显示
    public function edit($id=0){
        $About   =   M('About');
        $this->assign('rs',$About->find($id));
        $this->display();
    }

    /* 添加或更新数据 */
    public function update(){
        $rs = $this->create();
        if(!$rs){ //数据对象创建错误
            return false;
        }

        if(empty($rs['id'])){
            $this->add();
        }else{
            $this->save();
        }
    }

}
?>
4、模板视图:edit.html<form method="post" action="{:U()}">
    <input type="hidden" name="id" value="{$rs.id|default=''}">
    标题:<input name="title" type="text" value="{$rs.title}">
    <input type="submit" name="submit" value=" 保 存 ">
</form>
5、问题:如果填写信息,是可以添加到数据库里的,但是不填的话,提示:操作失败


好像是自动验证和自动完成失效了,诚心求教:错误在哪里?如何改正?谢谢!
最佳答案
评论( 相关
后面还有条评论,点击查看>>