1

如何使用 Yii 资产管理器从控制台应用程序访问作为资产发布的图像?

我正在使用commandsYii(控制台应用程序)发送时事通讯。我无法在我的邮件模板中使用作为资产发布的图像。

我在protected/assets/images/文件夹中有实际的图像。当我使用 发布它们时asset manager,它们将在root/assets/6f3434/images/文件夹中可用。

通常我在 Yii 的 Web 应用程序中访问图像的代码是

<img src="<?php echo $this->assetBase ?>/images/a.png" />where$this->assetBase指的是已发布文件夹的 url,在本例中为root/assets/6f3434.

如果我从控制台应用程序运行代码,这同样不起作用。

4

1 回答 1

1

您没有解释到底是什么不起作用。所以这里只是一个一般的指导方针。

您必须assetManager在控制台应用程序中配置一个组件。而且您需要调整一些设置,以便最终获得相同的资产路径。您应该将这样的内容添加到您的console.php

<?php
  'aliases' => array(
      'webroot' => realpath(__DIR_.'/../..'),
  ),
  'components' => array(
      'assetManager'=>array(
          'class'     =>'CAssetManager',
          'basePath'  =>realpath(__DIR__.'/../../assets'),
          'baseUrl'   =>'/assets',
      ),
      'request' => array(
          'baseUrl' => '',
      ),
  ),
      //...
于 2013-04-23T11:55:23.287 回答