我想知道 KOHANA 模型上 $_table_columns 数组的功能。
我问这个,因为表的列是通过自省加载的,这个数组有什么用,它是属性的默认值吗?
$_table_columns
reflects your table column structure. So if your table has 3 columns (id, name, desc), $_table_columns
will be setup to array('id' => '', 'name' => '', 'desc' => '')
.
By default $_table_columns
is an empty array. When you extend ORM with your class and don't override $_table_columns
, it will be automatically filled by ORM by calling SHOW FULL COLUMNS FROM table_name
command. If you want to avoid this additional DB call, you can initialize $_table_columns
on your own:
class Model_User extends ORM {
protected $_table_columns = array('id' => '', 'name' => '', 'desc' => '');
}
Check here for more details.