首页 > 其他 > 详细

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

时间:2017-03-04 14:12:04      阅读:110      评论:0      收藏:0      [点我收藏+]

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

使用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());
    }

更加简洁。

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

原文:http://www.cnblogs.com/Alex-sk/p/6501161.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!