Yii2框架博客系统创建文章model与form

简介部分

1.使用gii创建文章数据模型    

    

   * 命名空间放在common中 方便后续扩展

 

 跟创建文章控制器一样 在根目录创建 /common/models/base/BaseModel.php

 

BaseModel.php   代码目录
<?php
namespace common\models\base;
/**
* 基础模型
*/
use yii\db\ActiveRecord;
class BaseModel extends ActiveRecord
{


}
?>
  

 

 

 

将所属的model继承base

 

有必要添加命名空间   use common\models\base\BaseModel;
 

 

 

 

2.创建文章表单数据模型

 

代码参考图
<?php
namespace frontend\models;
use yii\base\Model;

/**
*  文章表单模型
* 因为form不映射数据表 所以要在类中声名它的属性
*/
class PostForm extends Model
{
public $id;
public $title;
public $content;
public $label_img;
public $cat_id;
public $tags;


public $_lastError ="";


public function rules()
{
return [
[['id','title','content','cat_id'],'required'],
[['id','cat_id'],'integer'],
['title','string','min'=>4,'max'=>50],
];
}



public function attributeLabels()
{
return [
'id'=>'编号',
'title'=>'标题',
'content'=>'内容',
'label_img'=>'标签图',
'tags'=>'标签',
];
}
}
?>
  

理解记忆部分

     因为form不映射数据表 所以要在类中声名它的属性    public $id;
                                                                    public $title;
                                                                    public $content;
                                                                    public $label_img;
                                                                    public $cat_id;

                                                                    public $tags;

 

 

 

后续有表单的生成

 

 

    

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
Yii2框架的Active Record是一个强大的ORM(对象关系映射)工具,它可以将数据库中的表映射成为Yii2框架中的PHP类,并且提供了一系列的API来进行对数据库的操作。 下面是一些常用的Active Record操作: 1. 查询单条记录: ```php $model = ModelName::findOne($id); ``` 2. 查询多条记录: ```php $models = ModelName::find()->where(['attribute' => 'value'])->all(); ``` 3. 插入记录: ```php $model = new ModelName(); $model->attribute = 'value'; $model->save(); ``` 4. 更新记录: ```php $model = ModelName::findOne($id); $model->attribute = 'new value'; $model->save(); ``` 5. 删除记录: ```php $model = ModelName::findOne($id); $model->delete(); ``` 6. 自定义查询: ```php $models = ModelName::find()->select(['attribute1', 'attribute2'])->asArray()->all(); ``` 上述代码中,`ModelName`是你定义的Active Record类名,`findOne()`方法用于查找单条记录,`find()`方法用于查找多条记录,`where()`方法用于设置查询条件,`all()`方法返回所有查询结果,`new`关键字用于创建新的Active Record实例,`save()`方法用于保存数据到数据库中,`delete()`方法用于删除数据,`select()`方法用于指定查询的列,`asArray()`方法用于返回查询结果数组而不是Active Record对象。 需要注意的是,Active Record还提供了一些高级的操作,如关联查询、批量操作、查询缓存等。详细的信息可以参考Yii2官方文档。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值