\ Eloquent \ Model :: Create方法返回null,状态码为OK

创建方法无法正常工作。始终返回OK状态,数据为空,并且在db中没有插入。没有错误显示不幸,所以我不知道该怎么办。


protected function addBooking(Request $request)

{


    $data = $request->all();



    if ($this->validator($data)->fails()) {

        return $this->sendError('Validation Error.', $this->validator($data)->errors());

    }


    Booking::create($data);


    return $data;


}

这是迁移


 public function up()

{

    Schema::create('bookings', function (Blueprint $table) {

        $table->bigIncrements('id');

        $table->bigInteger('booker_id')->nullable(false)->unsigned();

        $table->bigInteger('classroom_id')->nullable(false)->unsigned();

        $table->string('name');

        $table->string('color')->default("#ff0000");

        $table->string('file')->default(NULL);

        $table->string('start')->nullable(false);

        $table->string('end')->nullable(false);

        $table->timestamps();

        $table->foreign('booker_id')->references('id')->on('users');

        $table->foreign('classroom_id')->references('id')->on('classrooms');

    });

}

该模型


  class Booking extends Model

    {

    protected $fillable = [

        'booker_id', 'classroom_id', 'name', 'color', 'file', 'start', 'end'

    ];


    protected $hidden = [

    ];


    protected $casts = [

    ];

}

我如何发送请求


{

  "booker_id": 10,

  "classroom_id": 4,

  "name": "Microsoft",

  "start": "2019-04-25 14:45",

  "end": "2019-04-25 16:45",

  "color": "#ff0000",

  "file": "test"

}


UYOU
浏览 138回答 2
2回答

aluckdog

Laravel有一个路由约定,如果要创建新项目,则方法名称应为store()。我使用两种方式创建新元素:首先,这是较短的方法,并且我在StoreBooking中添加了验证public function store( StoreBooking $request ) {  $data = $request->all();  $booking = Booking::query()->create( $data );}基于laravel文档的记录器:public function store( StoreBooking $request ) { $booking = new Booking(); $booking->bookier_id = $request->bookier_id; /**  add other items **/ $booking->save();}

慕田峪9158850

//您应该使用表单请求来验证数据。并将所有业务逻辑移至模型protected function addBooking(Request $request){    $data = $request->all();    if ($this->validator($data)->fails()) {        return $this->sendError('Validation Error.', $this->validator($data)->errors());    }    return Booking::create($data)->fresh();}
打开App,查看更多内容
随时随地看视频慕课网APP