2011-08-13 2 views
1

dans app_controller.php load Session, Auth composants.Cakephp: charge les composants dans les composants

Et dans posts_controller.php, j'utilise CustomComponent avec $ components = array ('Session', 'Auth');

Alors CustomComponent doit-il recharger les composants Session et Auth?

Si j'utilise et crée beaucoup de composants et que les composants utilisent d'autres composants. Cela rendra l'application très lente?


J'ai demandé à CakePHP IRC, une réponse personne n'est pas:

[11:05] il ne sera pas lent, je crois qu'il passe par ceux qui l'entourent référence

[11 : 05] si vous avez rien à craindre

Répondre

2

oui, il faudrait être $components = array('Session','Auth','Custom'); Ou vous pouvez utiliser: App::import('Component', 'Custom');$Custom = new CustomComponent();

Then do CustomComponent must reload Session, Auth components? Si vous n'utilisez pas Session ou Auth dans votre classe CustomComponent, alors non.

It will make app is very slow? Non, sauf si vous utilisez beaucoup de composants.

4

Supposons que vous souhaitiez importer le composant AComponent dans BComponent.

ACordon

class AComponent extends Component { 
    public $components = array('BComponent'); 

    public function xyz(){ 
      $test = $this->BComponent->abc($name); 
      echo $test; 
    } 
} 

BComponent

class BComponent extends Component { 

    public function abc($name){ 
      return "My name is: ". $name; 
    } 
}