1

我正在使用 cakephp 2.1 版本并创建了一个组件作为 GoogleApiComponent 如下。

class GoogleApiComponent extends Component {
  public $client;
  public $analytics;
  function __construct($prompt = null) {
      $this->client = new apiClient();
      $this->client->setApprovalPrompt($prompt);
      $this->analytics = new apiAnalyticsService($this->client);
  }

}

然后在 AppController 中,我包含了上述组件。

public $components = array('GoogleApi');

用户登录后,我必须检查 AppController 的 beforeFilter() 方法中的一些条件,并根据这些条件更改 GoogleAPiComponent 构造函数的参数。那么这是如何完成的呢?作品更值得欣赏。。

4

1 回答 1

1

您可以将$settings数组传递给您的组件。

请参阅http://book.cakephp.org/2.0/en/controllers/components.html#configuring-components

在您的组件内部,您可以通过$this->settings

于 2013-02-21T09:06:16.557 回答