Yii Model Layer Operation summary
A summary of the operation properties and methods of Yii model layer.
tablename– set the table name corresponding to the model, for example:
Public Function TableName () {return ' Gshop_order_ext ';}
rules– setting validation rules for each field in the model
relations– Setting Association Rules
attributelabels– setting aliases for each field
safeattributes– setting a field that can modify a property
Beforevalidate and aftervalidate– fields are validated before and after validation functions that need to return a true value
BeforeSave and aftersave– records pre-and post-store functions that need to return a true value
Second, the ORM in Yii uses AR, there are several major operations, namely:
save– Operating Data
update– Modifying data
delete– Deleting data
validate– Validating data
When reading records, there are several ways to do this:
findbypk– find records by primary key and result in a single record
findbyattribute– to find records through attributes, resulting in a single record
findallbyattributes– finding data through attributes, resulting in a recordset
findall– finding data through Cdbcriteria objects, resulting in Recordset *
The Find method receives the parameter to have 2 kinds, does not have the asterisk, accepts the array as the parameter, has the asterisk to receive the Cdbcriteria object as the parameter, when uses the object, may provide the more search condition, below gives an instance:
$criteria = new Cdbcriteria; Create a Cdbcriteria object
$criteria->condition = ' title like% '. ' PHP '. '%'; Set query criteria
$criteria->order = ' createdtime DESC '; Set sorting criteria
$criteria->limit = 10; Number of bars qualifying records
$criteria->select = ' id,title,content '; Set the fields that the result contains
$articles = Article::model ()->findall ($criteria); The result is an array, where each element is a Record object
Again, Yii defaults to the Lazyload loading form of the associated data, which is read only when needed. Thus, when we do not need to correlate the data, Yii will not help us to read, greatly accelerating the speed of the reaction. But there are some times, we need to correlate data, such as reading the article, we need the article belongs to the classification, if the use of Lazyload form, there will be how many, query how many times, the efficiency is very low, then need to eagerload, The data of the associated table is read out all at once.
Like what:
$articles = Article::model ()->with (' category ')->findall ();
Use with to read the data of the associated table all at once. The settings of the associated table are set in the relation of the model.
Like what:
Public Function relations () { return Array ( ' category ' = = Array (self::belongs_to, ' category ', ' categoryId ') , );}
Very clear and unambiguous.
Articles you may be interested in
- Analysis of module development of YII Framework Framework
- The understanding of Yii Framework Yiiapp ()
- Yii database Add, modify, delete related Operations summary
- The summary of Yii database query operation
- Summary of common methods of Yii Cdbcriteria
- Yii gets the current controller name and action name
- How Yii uses Phpexcel to import Excel files
- Yii Action Method Tips
http://www.bkjia.com/PHPjc/1058850.html www.bkjia.com true http://www.bkjia.com/PHPjc/1058850.html techarticle the YII model layer operation summarizes the operation properties and methods of Yii model layer. tablename– sets the name of the table corresponding to the model, for example: Public function TableName () {return ' Gshop_order_ext ';} r ...