cakephp-2.0 > Model :: __construct()
A AbstractTransport AclBehavior AclComponent AclInterface AclNode AclShell Aco AcoAction ActionsAuthorize ApcEngine ApiShell App AppController AppController AppHelper AppHelper AppModel AppModel AppShell Aro AuthComponent B BadRequestException BakeShell BakeTask BaseAuthenticate BaseAuthorize BasicAuthenticate BasicAuthentication BehaviorCollection C Cache CacheEngine CacheException CacheHelper CacheSession CakeEmail CakeErrorController CakeException CakeLog CakeLogException CakeLogInterface CakePlugin CakeRequest CakeResponse CakeRoute CakeSchema CakeSession CakeSessionException CakeSessionHandlerInterface CakeSocket ClassRegistry CommandListShell Component ComponentCollection ConfigReaderInterface Configure ConfigureException ConnectionManager ConsoleErrorHandler ConsoleException ConsoleInput ConsoleInputArgument ConsoleInputOption ConsoleInputSubcommand ConsoleOptionParser ConsoleOutput ConsoleShell ContainableBehavior Controller ControllerAuthorize ControllerTask CookieComponent CrudAuthorize D DatabaseSession DataSource DbAcl DbAclSchema DbConfigTask DboSource Debugger DebugTransport DigestAuthenticate DigestAuthentication Dispatcher E EmailComponent ErrorHandler ExceptionRenderer ExtractTask F File FileEngine FileLog FixtureTask Folder ForbiddenException FormAuthenticate FormHelper H Helper HelperCollection HelpFormatter HtmlHelper HttpException HttpResponse HttpSocket I I18n I18nModel i18nSchema I18nShell Inflector IniReader InternalErrorException J JqueryEngineHelper JsBaseEngineHelper JsHelper L L10n M MailTransport MediaView MemcacheEngine MethodNotAllowedException MissingActionException MissingBehaviorException MissingComponentException MissingConnectionException MissingControllerException MissingDatabaseException MissingDatasourceConfigException MissingDatasourceException MissingHelperException MissingLayoutException MissingModelException MissingPluginException MissingShellException MissingShellMethodException MissingTableException MissingTaskException MissingTestLoaderException MissingViewException Model ModelBehavior ModelTask MootoolsEngineHelper Multibyte Mysql N NotFoundException NumberHelper O Object ObjectCollection P PagesController PagesController PaginatorComponent PaginatorHelper Permission PhpReader PluginShortRoute PluginTask Postgres PrivateActionException ProjectTask PrototypeEngineHelper R RedirectRoute RequestHandlerComponent Router RouterException RssHelper S Sanitize Scaffold ScaffoldView SchemaShell Security SecurityComponent SessionComponent SessionHelper SessionsSchema Set Shell ShellDispatcher SmtpTransport SocketException Sqlite Sqlserver String T TaskCollection TemplateTask TestsuiteShell TestTask TextHelper ThemeView TimeHelper TranslateBehavior TreeBehavior U UnauthorizedException UpgradeShell V Validation View ViewTask W WincacheEngine X XcacheEngine Xml XmlException

__construct

line:634 at /lib/Cake/Model/Model.php
Constructor. Binds the model's database table to the object.

Method

public __construct ($id = false, $table = null, $ds = null)

Parameters

ParameterTypeCommentDefault
$id mixed optional Set this ID for this model on startup, can also be an array of options, see above. false
$table string optional Name of database table to use. null
$ds string optional DataSource connection name. null

Return

Comment

Constructor. Binds the model's database table to the object.

If `$id` is an array it can be used to pass several options into the model.

- id - The id to start the model on.
- table - The table to use for this model.
- ds - The connection name this model is connected to.
- name - The name of the model eg. Post.
- alias - The alias of the model, this is used for registering the instance in the `ClassRegistry`.
eg. `ParentThread`

### Overriding Model's __construct method.

When overriding Model::__construct() be careful to include and pass in all 3 of the
arguments to `parent::__construct($id, $table, $ds);`

### Dynamically creating models

You can dynamically create model instances using the $id array syntax.

{{{
$Post = new Model(array('table' => 'posts', 'name' => 'Post', 'ds' => 'connection2'));
}}}

Would create a model attached to the posts table on connection2. Dynamic model creation is useful
when you want a model object that contains no associations or attached behaviors.

@param mixed $id Set this ID for this model on startup, can also be an array of options, see above.
@param string $table Name of database table to use.
@param string $ds DataSource connection name.