Thinkphp一些诡异的注意事项

来源:互联网 发布:淘宝banner制作 编辑:程序博客网 时间:2024/05/16 04:57
一.三大自动 
1.自动验证的callback必须写在 protected $_validate下面 不然失效
同理自动添加的也是 位置决不能错
2.自动验证设置自动映射之后,所有查询数据库的内置操作就会失效 如 unique 需要自己写callback
3.自动验证的名字 永远是数据库字段名 
二.大M大D方法
开启APP_DEBU的条件下 大M方法对表名首字母大小写不敏感  而大D对大小写敏感 
三.关联模型
关联模型删除 id一定写在 $mo->delete(id) 内 如果用where条件删除 那么不会删除所有关联表的信息 只会删除当前表的信息
四.一个内部冲突
1.比较恶心的__PUBLIC__和RBAC对define('APP_NAME','./Admin')定义有冲突
  RBAC要求define('APP_NAME','Admin')不能有前缀  目前方法是修改RBAC的源码
五。连贯查询
1.连贯查询一定要用“” 如 field("")   单引号会莫名其妙的失效。
2.连贯查询 where数组查询 值是数组 一定加单引号 不见单引号不识别 where(array('sectionid'=>array('EQ',$p['sid']))
五。widget 的模板如何输出变量
当你要在widget的模板输出变量时  如 $data['count']=5 那么在模板上 就写{$count}而绝对不是{$data['count']} 列表同理  这里设计的很傻逼 完全和前面逻辑不一样嘛
六、关联修改 不支持 where id in () 这种形式的关联
原创粉丝点击