Yii - 在控制台中调用 api 请求
Yii - Calling api request within CConsole
我有以下问题:
我有一个带有评论的本地数据库,我需要对通过 API 请求获得的一些用户执行一些操作。
代码是这样的:
class RunCronCommand extends CConsoleCommand {
public function actionIndex() {
...
$comments = Comment::model()->findAll('status = :status', array(':status' => Comment::ACTIVE));
foreach ($comments as $comment) {
$profile = Yii::app()->api->get('/users/'. $comment->user_id . '/getProfile');
}
...
}
当我执行命令时出现此错误
异常 'CException',消息 'Property "CConsoleApplication.api" is not defined.' 在 /var/www/core/trunk/common/lib/Yii/base/CComponent。php:131
有什么想法吗?
提前致谢!
您将不得不重新考虑应用程序的设计。
从你的例子来看,你可能想使用 Curl,虽然我认为这可能有点矫枉过正/
要运行控制器中的一个动作,你可以使用类似
的东西
Yii::import('application.modules.moduleName.controllers.ControllerName');
$controller_instance = new ControllerName("Default");
$controller_instance->actionIndex();
查看此处了解更多信息。
感谢您的回复。
通过将 class 添加到 console/config/main 来修复它。php
'components' => array(
'api' => array(
'class' => 'common.extensions.Api.Api'
),
我有以下问题:
我有一个带有评论的本地数据库,我需要对通过 API 请求获得的一些用户执行一些操作。 代码是这样的:
class RunCronCommand extends CConsoleCommand {
public function actionIndex() {
...
$comments = Comment::model()->findAll('status = :status', array(':status' => Comment::ACTIVE));
foreach ($comments as $comment) {
$profile = Yii::app()->api->get('/users/'. $comment->user_id . '/getProfile');
}
...
}
当我执行命令时出现此错误
异常 'CException',消息 'Property "CConsoleApplication.api" is not defined.' 在 /var/www/core/trunk/common/lib/Yii/base/CComponent。php:131
有什么想法吗?
提前致谢!
您将不得不重新考虑应用程序的设计。
从你的例子来看,你可能想使用 Curl,虽然我认为这可能有点矫枉过正/
要运行控制器中的一个动作,你可以使用类似
的东西 Yii::import('application.modules.moduleName.controllers.ControllerName');
$controller_instance = new ControllerName("Default");
$controller_instance->actionIndex();
查看此处了解更多信息。
感谢您的回复。
通过将 class 添加到 console/config/main 来修复它。php
'components' => array(
'api' => array(
'class' => 'common.extensions.Api.Api'
),