Laravel5.1 模型--创建与修改

上次我们了解了如何查询模型数据,今天我们来看看如何创建一个模型,

使用save创建模型

save方法很简单,看一个例子就明白了:

    // 创建一个模型
    $article = new \App\Models\Article();

    // 设置模型的值
    $article->title = '标题';
    $article->id = 60;
    $article->content = '一些内容';
    $article->author = 'larger K';

    if ($article->save()){
        echo '添加成功';
    }else{
        echo '添加失败';
    }

这样就可以创建一个模型 并把数据插入了数据库中,save方法也可以接受一个关联数组,再次就不做演示了。

 

批量赋值--create方法

这是我们最常使用的一种方法,因为它相比较于save更加简洁方便,create方法是批量赋值的,如果要使用批量赋值 需要在模型中声明白名单(fillable)或黑名单(guarded),当然 我们可以只声明白名单或只声明黑名单即可,因为非黑即白。

  • fillable数组:声明有哪些属性是可以批量赋值的。
  • guarded数组:声明哪些数组是不可以批量赋值的。
class Article extends Model
{
    // 声明哪些属性是可以批量赋值的
    protected $fillable = ['title','content','author'];
}

如果我们在某种情况下不得不修改白名单以外(即黑名单)的属性 那怎么办呢? 这时我们只能使用save方法了。

 

下面我们来模拟一个环境,我们需要接受html表单提交过来的数据 并创建模型 插入数据库:

    public function store(Request $request)
    {
        // 表单数据都在 Request中 关于Request以后会普及到
        Article::create($request->all());
    }

上面的例子只需要一行代码就可以完成插入工作。

 

使用save进行更新数据

save方法不仅仅可以插入数据,也可以更新数据:

    // 首先通过id查找数据
    $article = \App\Models\Article::findOrFail(60);

    // 设置要更新的值
    $article->title = '新的标题';
    $article->id = 21;
    $article->content = '新的内容';
    $article->author = 'ASK';

    if ($article->save()){
        echo '更新成功';
    }else{
        echo '更新失败';
    }

 

批量赋值--update

相对应create而言,另一个批量赋值是专门用来更新的方法:update,update也是批量赋值方法 需要注意白名单和黑名单

    public function update(Request $request, $id)
    {
        // 获取模型数据
        $article = Article::findOrFail($id);
        $article->update($request->all());
    }

更加简洁。

转载于:https://www.cnblogs.com/Alex-sk/p/6501161.html

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值