zoukankan      html  css  js  c++  java
  • 关于Yii2中的MVC中的视图总结(持续更新中)

    一、首先在控制器中,将处理好的数据发送给前台:

    $this->layout = 'base'; 这里填写视图的模板文件(可以不写这行代码,如果不写,默认为views/layouts/main.php这个文件)

    return $this->render ('这里填写视图文件名称',['user'=>这里填写处理好的数据(比如说数组$list等等)]);

    如果不想使用模板文件,那么这里的写法为 return $this->renderPartial('index');

    前台接受为$user

    二、准备好模板文件:

    <?php 
    use yiihelpersHtml;
    use yiihelpersUrl;
    use yiiwebView;
    $this->registerCssFile('@web/public/frontend/css/style.css');
    $this->registerJsFile('@web/public/frontend/js/jquery.min.js',['position'=>View::POS_HEAD]);
    $this->registerJsFile('@web/public/frontend/js/index.js',['position'=>View::POS_HEAD]);
    ?>
    <?php $this->beginPage()?>
    <!DOCTYPE html>
    <html>
    <head>
    <meta charset="utf-8" />
    <?= Html::encode($this->title)?>
    <?= $this->head()?>
    <meta name="viewport" content="width=device-width, initial-scale=1, maximum-scale=1, user-scalable=no">
    </head>
    <body>
    <?php $this->beginBody()?>
    <?= $content?>
    <?php $this->endBody()?>
    </body>
    </html>
    <?php $this->endPage()?>
    View Code

    三、建立视图文件

    如果控制器是SiteController,那么文件建立在views/site/(xxx.php),简单来说,这个视图文件,将被视为二中的$content,放入模板文件中。

    视图文件的<style>中的背景图片的路径写法:

    {background:url(/public/frontend/images-pc/p04.png) no-repeat 0 center;}

    渲染静态页面 

    静态页面指的是大部分内容为静态的不需要控制器传递 动态数据的Web页面。

    可将HTML代码放置在视图中,在控制器中使用以下代码输出静态页面:

    public function actionAbout()
    {
        return $this->render('about');
    }
    

    如果Web站点包含很多静态页面,多次重复相似的代码显得很繁琐, 为解决这个问题,可以使用一个在控制器中称为 yiiwebViewAction 的独立动作。 例如:

    namespace appcontrollers;
    
    use yiiwebController;
    
    class SiteController extends Controller
    {
        public function actions()
        {
            return [
                'page' => [
                    'class' => 'yiiwebViewAction',
                ],
            ];
        }
    }
    

    现在如果你在@app/views/site/pages目录下创建名为 about 的视图, 可通过如下url显示该视图:

    http://localhost/index.php?r=site/page&view=about
    

    GET 中 view 参数告知 yiiwebViewAction 动作请求哪个视图,然后操作在 @app/views/site/pages目录下寻找该视图,可配置 yiiwebViewAction::$viewPrefix 修改搜索视图的目录。

  • 相关阅读:
    用于json的 .ashx 小细节
    (转)写让别人能读懂的代码
    Mvc 中ViewBag Model 查找不到解决
    Windows 2008 R2 配置 DNS 实现二级域名
    Windows Server 2008 DNS服务器安装与配置
    【iOS】swift init构造器
    【iOS】OC-UTC日期字符串格式化
    android使用sharesdk的小感
    【iOS】Swift GCD-下
    【iOS】Swift GCD-上
  • 原文地址:https://www.cnblogs.com/fpcing/p/7680499.html
Copyright © 2011-2022 走看看