Laravel 5.4存储质量分配模型和关系

时间:2017-06-12 10:12:19

标签: laravel-5 mass-assignment

在Laravel 5.4中插入质量分配关系时,我不确定最佳做法 - 我是框架的新手。下面的代码工作正常,但是你能告诉我有没有办法简单地插入一行(插入关系)?

我试图查看' save()'' push()'但它没有按预期工作。如果交易规模扩大,这会产生影响吗?

我有一个上市模型,有一个hasOne关系:

    public function garage()
    {
       return $this->hasOne('App\Garage', 'post_id');
    }

首先我有一些验证,然后我使用以下内容来存储,我想简化为一行代码:

public function store(Request $request)
{
    // Validation has passed, insert data into database
   $listing = Listing::create($request->all());
   $listing->Garage()->create($request->all());
}

此外,如果我想返回插入的数据,我将如何执行此操作,因为以下仅返回Listing模型而不是Garage关系?是的,我知道我不会在现实世界的应用程序中这样做。

return \Response::json([
'message' => 'Post Created Succesfully',
'data' => $listing
]);

非常感谢任何帮助

1 个答案:

答案 0 :(得分:0)

方法链

您的import {Component} from '@angular/core'; declare var jQuery: any; @Component({ selector: 'my-app', template: ` <div class="owl-carousel owl-theme"> <div> Your Content </div> <div> Your Content </div> <div> Your Content </div> <div> Your Content </div> <div> Your Content </div> <div> Your Content </div> <div> Your Content </div> </div> `, }) export class App { ngOnInit() { jQuery('.owl-carousel').owlCarousel(); } }方法看起来不错。如果你不需要store对象本身,你可以链接方法:

listing

但是如果你需要列表对象,就像你之前做的一样好!

返回关系模型

如果你想要返回public function store(Request $request) { // Validation has passed, insert data into database $garage = Listing::create($request->all()) ->garage()->create($request->all(); } 关系模型,你可以像普通的类别一样访问它:

garage