yii中new table() 和使用table::model()区别
来源:互联网 发布:淘宝女款折扣凉鞋 编辑:程序博客网 时间:2024/06/06 09:49
创建一个CActiveRecord模型 public function tableName(){ return __CLASS__; } public static function model($className = __CLASS__){ return parent::model($className); }
class table extends CActiveRecord{ //table为表名,为了使用方便
}
使用时可以直接使用
table::model()->find() ;
或者
$model = new table();
$model->find();
但其实两者是有所区别的,前者使用静态方法创建类实例 与 类中所使用的$this为相同,单一操作不会有影响,当有查询后的添加操作时,将导致无法新增数据,log里看到程序是进行的update操作。
而后者,new一个新对象,与类中$this对象是不冲突的
所以建议:
模型中既有查询又有插入操作时使用 new 方法创建对象进行操作
只在使用单纯的查询时使用table::model()方法
0 0
- yii中new table() 和使用table::model()区别
- Oracle中delete table和truncate table区别
- smartform中table和template的区别
- hibernate中@Entity和@Table的区别
- table中cellspacing和cellpadding的区别
- hibernate中@Entity和@Table的区别
- YII model创建和使用
- fact table 和dimension table的区别
- truncate table和drop table的区别
- insert table 和create table as 区别
- Adding a New Field to the Movie Model and Table
- lua 中table的使用和分析
- qt model和view的table 小记
- DB中table view区别
- table的model生成
- 使用table自带方法和DOM方法操作HTML table的区别
- DELETE 和TRUNCATE TABLE区别
- form和table的区别
- 路由器连接、静态路由配置实例
- centos6.3系统python2.6.6升级到python2.7.9
- 【数据管理和数据库的发展史】唯有源头活水来——数据库学习之路(1)
- nfs 之read分析
- getenv putenv setenv和unsetenv详解 .
- yii中new table() 和使用table::model()区别
- 决策树之 ID3
- 最近遇到的一个关于iOS屏幕旋转的坑,而且还是自己无意中挖的
- 查询oracle中所有用户信息
- eventlet
- gre数学专项考试报名流程整理
- hashtable和hashmap的区别
- JAVA设计模式之单例模式
- setenv与putenv的区别 .