CodeIgniter框架模型(model),视图(view)和控制器(controller)中的文件操作

简介: ==============调用视图============= 控制器需要根据用户访问的不同方法,去调用相关的视图 a:调用一个视图 在controller文件夹下创建一个新文件,复制welcome文件里的内容 $this->load->view('视图文件名');   b.调用多个视图 $this->load->view('hel
==============调用视图=============
控制器需要根据用户访问的不同方法,去调用相关的视图
a:调用一个视图
在controller文件夹下创建一个新文件,复制welcome文件里的内容
$this->load->view('视图文件名');
 
b.调用多个视图
$this->load->view('hello_index_h');
$this->load->view('hello_index');
$this->load->view('hello_index_f');
 
==============传送数据=============
控制器需要向视图中传送需要展示给用户的业务数据
 
视图
简而言之,一个视图就是一个网页,或是网页的部分,如头部,底部,侧边栏等等
上次说到视图是在  /application/views 
 
将动态数据传入视图中
数据通过控制器以一个数组或是对象的形式传入视图 , 这个数组或对象作为视图载入函数的第二个参数
 
 
=============什么是模型============
1、模型是一个数据库类
2、一个模型针对一张表
3、类当中的方法是针对功能的具体需求而做的
比如:
我现在有一张用户user表
字段有id、username、password、realname、age
创建一张表 
create table user(
id int primary key auto_increment,
name varchar(30) not null,
passwd varchar(128) not null
)engine myisam charset=utf8;
 
创建表完成之后,要配置数据库
application/config文件夹下的database.php
$db['default']['hostname'] = 'localhost';
$db['default']['username'] = '';  //数据库名
$db['default']['password'] = '';  //密码
$db['default']['database'] = ''; //要选择的数据库
 
创建model
1、模型的存放目录

项目目录/models/

2、创建目录就是创建一个类文件

必须继承数据核心类CI_Model,同时重载父类中的构造方法

class Model_name extends CI_Model 
{

    function __construct()
    {
        parent::__construct();
    }
}
CI为我们提供了一个非常强大和简单的数据库函数类
Active Record 类
\system\database\DB_active_rec.php
 
//如何在模型中使用Active Record 类中的方法呢

$this->db->方法名()

//例如:
$this->db->get('entries', 10);

1、连接数据库($this->load->database();)

写在模型的构造函数里
这样加载模型的同时就连接了数据库了,非常方便



2、插入数据($this->db->insert($t_name,$data);)

$t_name=你要操作的表
$data=你要插入的数据(键名=字段名,键值=字段值,自增主键不用写)
 
3、更新数据
$this->db->where(字段名, 字段值);
$this->db->update(表名,修改值的数组);
 
4、查询数据
$this->db->where(字段名, 字段值);
$this->db->select(字段);
$query = $this->db->get(表名);
return $query->result();
 
5、删除数据
$this->db->where(字段名, 字段值);
$this->db->delete(表名);
 
=========在控制器中调用模型=========
$this->load->model(模型名)
$this->模型名->方法名

 


 
 
目录
相关文章
|
人工智能 自然语言处理 Linux
AI谱曲 | 基于RWKV的最佳开源AI作曲模型魔搭推理实践
AI谱曲 | 基于RWKV的最佳开源AI作曲模型魔搭推理实践
|
网络协议 网络安全 Docker
Docker Swarm 解决报错Error response from daemon: rpc error: code = Unavailable desc = connection error:
本文是博主学习docker swarm遇到的问题记录,希望对大家有所帮助。
2211 0
Docker Swarm 解决报错Error response from daemon: rpc error: code = Unavailable desc = connection error:
|
关系型数据库 Java Linux
在Linux中,有哪些基本组件?
在Linux中,有哪些基本组件?
|
存储 算法 搜索推荐
Java数据结构:从基础到高级应用
Java数据结构:从基础到高级应用
261 0
|
存储 关系型数据库 MySQL
软件设计与实现:从概念到产品
【8月更文第21天】在现代软件开发过程中,从概念到产品的转化需要经过多个阶段的设计和规划。本文将重点介绍软件设计的几个关键方面:软件设计概述、架构设计、模块设计、用户界面设计以及数据库设计,并通过一个假设的项目——在线图书管理系统为例进行说明。
1184 1
|
网络安全
关闭防火墙
关闭防火墙
521 2
|
存储 小程序 容器
如何制作一个微信答题小程序?
如何制作一个微信答题小程序?
697 0
|
IDE 物联网 网络性能优化
什么是MQTT?如何使用ESP12F芯片连接到MQTT服务器
通过上述步骤,你可以成功地使用ESP12F模块连接到MQTT服务器,发布和订阅消息。MQTT的轻量级和高效性使其非常适合各种物联网应用,而ESP12F模块的强大功能和低成本使其成为实现这些应用的理想选择。
685 0
|
机器学习/深度学习 人工智能 监控
构建未来:AI在个性化学习路径设计中的应用
【4月更文挑战第29天】 随着人工智能(AI)的飞速发展,教育领域正经历一场由数据驱动的变革。本文聚焦于AI技术在个性化学习路径设计中的应用,探讨其如何通过精准分析学习者的行为和表现来优化教学策略和内容。我们展示了利用机器学习模型来预测学习成果、识别学习障碍以及提供即时反馈的潜力。文章还讨论了实施个性化学习所面临的挑战,包括数据隐私保护和技术整合问题,并提出了相应的解决策略。
1034 2
|
缓存 前端开发 JavaScript
【专栏】GraphQL,Facebook 开发的API查询语言,正在前端开发中崭露头角
【4月更文挑战第27天】GraphQL,Facebook 开发的API查询语言,正在前端开发中崭露头角。它提供强类型系统、灵活查询和实时更新,改善数据获取效率和开发体验。掌握GraphQL涉及学习基础概念、搭建开发环境和实践应用。结合前端框架,利用缓存和批量请求优化性能,与后端协作设计高效API。尽管有挑战,但GraphQL为前端开发开辟新道路,引领未来趋势。一起探索GraphQL,解锁前端无限可能!
303 2