yii控制器怎么定义

发布时间 - 2019-12-04 00:00:00    点击率:

控制器是 MVC 模式中的一部分, 是继承yii\base\Controller类的对象,负责处理请求和生成响应。具体来说,控制器从应用主体接管控制后会分析请求数据并传送到模型, 传送模型结果到视图,最后生成输出响应信息。                 (推荐学习:yii框架)

动作

控制器由 操作 组成,它是执行终端用户请求的最基础的单元, 一个控制器可有一个或多个操作。

如下示例显示包含两个动作view and create 的控制器post:

namespace app\controllers;

use Yii;
use app\models\Post;
use yii\web\Controller;
use yii\web\NotFoundHttpException;

class PostController extends Controller
{
    public function actionView($id)
    {
        $model = Post::findOne($id);
        if ($model === null) {
            throw new NotFoundHttpException;
        }

        return $this->render('view', [
            'model' => $model,
        ]);
    }

    public function actionCreate()
    {
        $model = new Post;

        if ($model->load(Yii::$app->request->post()) && $model->save()) {
            return $this->redirect(['view', 'id' => $model->id]);
        } else {
            return $this->render('create', [
                'model' => $model,
            ]);
        }
    }
}

创建控制器

在Web applications网页应用中,控制器应继承yii\web\Controller 或它的子类。 同理在console applications控制台应用中,控制器继承yii\console\Controller 或它的子类。 

如下代码定义一个 site 控制器:

namespace app\controllers;
use yii\web\Controller;
class SiteController extends Controller
{
}


# yii  # 子类  # 多个  # 它是  # 后会  # 可有  # models 


相关栏目: 【 网站优化151355 】 【 网络推广146373 】 【 网络技术251813 】 【 AI营销90571


相关推荐: 香港服务器网站搭建教程-电商部署、配置优化与安全稳定指南  JavaScript如何实现继承_有哪些常用方法  Laravel怎么调用外部API_Laravel Http Client客户端使用  如何快速搭建高效服务器建站系统?  免费的流程图制作网站有哪些,2025年教师初级职称申报网上流程?  哪家制作企业网站好,开办像阿里巴巴那样的网络公司和网站要怎么做?  EditPlus中的正则表达式实战(6)  如何在万网自助建站平台快速创建网站?  Laravel怎么实现支付功能_Laravel集成支付宝微信支付  长沙做网站要多少钱,长沙国安网络怎么样?  Laravel怎么配置自定义表前缀_Laravel数据库迁移与Eloquent表名映射【步骤】  如何在阿里云虚拟机上搭建网站?步骤解析与避坑指南  厦门模型网站设计制作公司,厦门航空飞机模型掉色怎么办?  Laravel Fortify是什么,和Jetstream有什么关系  在centOS 7安装mysql 5.7的详细教程  Laravel如何实现邮件验证激活账户_Laravel内置MustVerifyEmail接口配置【步骤】  Laravel如何实现用户密码重置功能?(完整流程代码)  JavaScript如何实现路由_前端路由原理是什么  Laravel如何使用Scope本地作用域_Laravel模型常用查询逻辑封装技巧【手册】  北京网站制作的公司有哪些,北京白云观官方网站?  深圳网站制作公司好吗,在深圳找工作哪个网站最好啊?  悟空识字怎么关闭自动续费_悟空识字取消会员自动扣费步骤  ChatGPT回答中断怎么办 引导AI继续输出完整内容的方法  网站制作软件有哪些,制图软件有哪些?  如何在 React 中条件性地遍历数组并渲染元素  Laravel如何使用Service Provider服务提供者_Laravel依赖注入与容器绑定【深度】  Python自动化办公教程_ExcelWordPDF批量处理案例  ,在苏州找工作,上哪个网站比较好?  如何在IIS管理器中快速创建并配置网站?  Laravel怎么实现一对多关联查询_Laravel Eloquent模型关系定义与预加载【实战】  如何在云指建站中生成FTP站点?  高防服务器如何保障网站安全无虞?  Laravel Telescope怎么调试_使用Laravel Telescope进行应用监控与调试  独立制作一个网站多少钱,建立网站需要花多少钱?  实现点击下箭头变上箭头来回切换的两种方法【推荐】  韩国代理服务器如何选?解析IP设置技巧与跨境访问优化指南  Java垃圾回收器的方法和原理总结  如何在 Python 中将列表项按字母顺序编号(a.、b.、c. …)  香港服务器建站指南:免备案优势与SEO优化技巧全解析  网站制作怎么样才能赚钱,用自己的电脑做服务器架设网站有什么利弊,能赚钱吗?  HTML透明颜色代码怎么让图片透明_给img元素加透明色的技巧【方法】  Laravel怎么设置路由分组Prefix_Laravel多级路由嵌套与命名空间隔离【步骤】  如何用狗爹虚拟主机快速搭建网站?  怎么用AI帮你设计一套个性化的手机App图标?  Python3.6正式版新特性预览  ChatGPT怎么生成Excel公式_ChatGPT公式生成方法【指南】  如何获取上海专业网站定制建站电话?  大连企业网站制作公司,大连2025企业社保缴费网上缴费流程?  Laravel如何使用Telescope进行调试?(安装和使用教程)  Laravel怎么在Blade中安全地输出原始HTML内容