2015-06-16 33 views
3

我需要加载模块的视图作为应用程序的另一视图内部的局部视图的局部视图。我不知道如何在手册中做到这一点。Yii的2:加载模块的视图上的另一个应用程序视图

的观点是完全独立的模块:

<?php 
    // This is the module's class. Do I need it here? 
    use vendor\xxx\cropk\CropK; 

/* @var $this yii\web\View */ 
    $this->title = 'Cropping Test'; 
?> 
<div class="site-index"> 
    <p>Cropping Test</p> 
    <?php 
     // ... 
    ?> 
</div> 

我怎样才能做到这一点?

回答

3

看着render's文档,你有几种选择:

被呈现在以下格式之一指定的观点:

  • 路径别名(例如,“@应用程序/意见/站点/索引“);应用(例如“//网站/索引”)内
  • 绝对路径:视图名以双斜线。实际的视图文件将在应用程序的视图路径下查找。模块(例如,“/站点/索引”)内
  • 绝对路径:视图名称开始于一个>单斜线。实际的视图文件将在$ module的视图路径下查找。
  • 相对路径(例如,“指数”):实际的视图文件将在$ viewPath被寻找。

基于这些选择,那样子你会指定应用程序中的绝对路径,或创建一个路径别名,并使用该语法(应用程序?主要网站的看法?只要它在。)

所以,如果你想渲染视图中的{basePath}/views/site/my_partial.php你会做这样的事情$this->renderPartial('//site/my_partial.php');

+0

我用'$ cropk =的Yii :: $ APP-> runAction( “cropk”);',它传递给视图,并能正常工作了。这应该被认为是非常规的吗? –

相关问题