欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  IT编程

laravel5.1框架下的批量赋值实现方法分析

程序员文章站 2023-11-04 21:04:34
本文实例讲述了laravel5.1框架下的批量赋值实现方法。分享给大家供大家参考,具体如下: 官方中文文档在这里: http://laravel-china.org/docs/5....

本文实例讲述了laravel5.1框架下的批量赋值实现方法。分享给大家供大家参考,具体如下:

官方中文文档在这里:

http://laravel-china.org/docs/5.1/eloquent#%e6%89%b9%e9%87%8f%e8%b5%8b%e5%80%bc

我先来说明一下一个场景:

你想要往数据库中存评论,在控制器的代码如下:

$comment->comment_id= $id;
$comment->title = $name;
$comment->url = $url;
$comment->introduction = $profile;
if ($comment->save()) {
  return redirect('admin/comment');
} else {
  return redirect()->back()->withinput()->witherrors('保存失败!')

设想一下如果这个评论表的字段有很多,岂不是要一个字段一个字段的存储,代码量太高。laravel框架提供了一个叫做批量赋值的功能:

控制器代码如下:

public function store(request $request)
{
  if (comment::create($request->all())) {
    return redirect()->back();
  } else {
    return redirect()->back()->withinput()->witherrors('评论发表失败!');
  }
}

对应的app\models中的comment类:

<?php
namespace app;
use illuminate\database\eloquent\model;
class comment extends model
{
protected $fillable = ['nickname', 'email', 'website', 'content','article_id'];
}
protected $fillable= ['nickname','email','website','content','article_id'];

这一行就表示控制器中得到的数据全部存入相应字段,是不是很简单方便?