Your observations are correct, there is no $uses
property anymore, instead models/tables that do not match the controller (ex PostsTable
for PostsController
) and are not available via associations, must be loaded explicitly.
This can be done by using either
So this is kind of a yes to your question, Controller::loadModel()
, ie
$this->loadModel('Name');
is a viable way of adding model/table instances to your controller as properties, wich at least in the default configuration, is essentially the shorthand for:
$this->Name = TableRegistry::get('Name');
but more loadModel()
is more abstracted, and supports non-table repositories.
与恶龙缠斗过久,自身亦成为恶龙;凝视深渊过久,深渊将回以凝视…