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 】
相关推荐:
动图在线制作网站有哪些,滑动动图图集怎么做?
EditPlus 正则表达式 实战(3)
iOS发送验证码倒计时应用
Laravel如何使用Seeder填充数据_Laravel模型工厂Factory批量生成测试数据【方法】
如何在局域网内绑定自建网站域名?
香港服务器网站搭建教程-电商部署、配置优化与安全稳定指南
Laravel如何使用模型观察者?(Observer代码示例)
大连网站制作费用,大连新青年网站,五年四班里的视频怎样下载啊?
如何正确选择百度移动适配建站域名?
Laravel如何实现全文搜索_Laravel Scout集成Algolia或Meilisearch教程
简历在线制作网站免费版,如何创建个人简历?
韩国网站服务器搭建指南:VPS选购、域名解析与DNS配置推荐
Laravel怎么为数据库表字段添加索引以优化查询
韩国服务器如何优化跨境访问实现高效连接?
车管所网站制作流程,交警当场开简易程序处罚决定书,在交警网站查询不到怎么办?
Laravel如何使用Guzzle调用外部接口_Laravel发起HTTP请求与JSON数据解析【详解】
百度输入法ai面板怎么关 百度输入法ai面板隐藏技巧
今日头条微视频如何找选题 今日头条微视频找选题技巧【指南】
Laravel队列任务超时怎么办_Laravel Queue Timeout设置详解
jQuery validate插件功能与用法详解
Laravel怎么处理异常_Laravel自定义异常处理与错误页面教程
浅谈redis在项目中的应用
高性价比服务器租赁——企业级配置与24小时运维服务
html5源代码发行怎么设置权限_访问权限控制方法与实践【指南】
Win11搜索不到蓝牙耳机怎么办 Win11蓝牙驱动更新修复【详解】
如何挑选最适合建站的高性能VPS主机?
香港服务器网站推广:SEO优化与外贸独立站搭建策略
javascript和jQuery中的AJAX技术详解【包含AJAX各种跨域技术】
香港服务器租用每月最低只需15元?
百度浏览器ai对话怎么关 百度浏览器ai聊天窗口隐藏
Midjourney怎样加参数调细节_Midjourney参数调整技巧【指南】
Win10如何卸载预装Edge扩展_Win10卸载Edge扩展教程【方法】
深圳网站制作设计招聘,关于服装设计的流行趋势,哪里的资料比较全面?
阿里云网站搭建费用解析:服务器价格与建站成本优化指南
Python文本处理实践_日志清洗解析【指导】
如何自定义建站之星网站的导航菜单样式?
Android中AutoCompleteTextView自动提示
mc皮肤壁纸制作器,苹果平板怎么设置自己想要的壁纸我的世界?
网站制作壁纸教程视频,电脑壁纸网站?
JavaScript中如何操作剪贴板_ClipboardAPI怎么用
制作公司内部网站有哪些,内网如何建网站?
Laravel如何集成微信支付SDK_Laravel使用yansongda-pay实现扫码支付【实战】
Laravel定时任务怎么设置_Laravel Crontab调度器配置
如何在自有机房高效搭建专业网站?
轻松掌握MySQL函数中的last_insert_id()
详解CentOS6.5 安装 MySQL5.1.71的方法
Bootstrap CSS布局之列表
如何为不同团队 ID 动态生成多个“认领值班”按钮
Android中Textview和图片同行显示(文字超出用省略号,图片自动靠右边)
如何快速生成凡客建站的专业级图册?


$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,
]);
}
}
}