API16

API16:JTable/ construct

From Joomla! Documentation

Revision as of 02:09, 25 March 2017 by JoomlaWikiBot (talk | contribs) (preparing for archive only)
(diff) ← Older revision | Latest revision (diff) | Newer revision → (diff)

Description

Object constructor to set table and key fields. In most cases this will be overridden by child classes to explicitly set the table and key fields for a particular database table.



Syntax

__construct($table, $key, &$db)
Parameter Name Default Value Description
$table Name of the table to model.
$key Name of the primary key field in the table.
&$db connector object.

Defined in

libraries/joomla/database/table.php

Importing

jimport( 'joomla.database.table' );

Source Body

function __construct($table, $key, &$db)
{
        // Set internal variables.
        $this->_tbl             = $table;
        $this->_tbl_key = $key;
        $this->_db              = &$db;

        // Initialise the table properties.
        if ($fields = $this->getFields()) {
                foreach ($fields as $name => $v) {
                        // Add the field if it is not already present.
                        if (!property_exists($this, $name)) {
                                $this->$name = $v->Default;
                        }
                }
        }

        // If we are tracking assets, make sure an access field exists and initially set the default.
        if (property_exists($this, 'asset_id')) {
                jimport('joomla.access.rules');
                $this->_trackAssets = true;
                // TODO: Do we need the following line anymore?
                //$this->access = (int) JFactory::getConfig()->getValue('access');
        }

        // If the acess property exists, set the default.
        if (property_exists($this, 'access'))
        {
                $this->access = (int) JFactory::getConfig()->getValue('access');
        }
}



Examples

Code Examples