问题
In Component I try to access Myprofile Model
class SignMeupComponent extends Object
public function register() {
$this->__isLoggedIn();
if (!empty($this->controller->data)) {
extract($this->settings);
$model = $this->controller->modelClass;
$this->controller->loadModel($model);
$this->controller->{$model}->Myprofile->save($this->controller->data);
$this->controller->data['Myprofile']['user_id'] = $this->controller->{$model}->id;
$this->controller->{$model}->set($this->controller->data);
if ($this->controller->{$model}->validates()) {
- how to use $this->controller->modelclass
- how to use any model in component
thank for any suggest
回答1:
$this->controller
is not defined by default. You have to save a reference to the controller manually, for example in the initialize()
method of your component:
public function initialize(&$controller, $settings = array()) {
$this->controller = $controller;
}
Then you should be able to access the controller's properties and methods.
来源:https://stackoverflow.com/questions/5983633/cakephp-component-this-controller-modelclass