小编Sta*_*lav的帖子

如何从Fractal Transformer结果中删除'data'属性?

我尝试这段代码(通过Fractal)来获得结果:

public static function doIt($array, $transformer)
{
    $manager = new Manager();

    $serializer = new \League\Fractal\Serializer\ArraySerializer();
    $manager->setSerializer($serializer);

    if ($array instanceof Collection) {
        $resource = new FractalCollection($array, new $transformer);
    } else {
        $resource = new FractalItem($array, new $transformer);
    }

    return $manager->createData( $resource )->toArray();
}
Run Code Online (Sandbox Code Playgroud)

你看,我补充道

$serializer = new \League\Fractal\Serializer\ArraySerializer();
$manager->setSerializer($serializer);
Run Code Online (Sandbox Code Playgroud)

从结果数组中删除'data'属性.

array:3 [?
  "key" => 1
  "title" => "First Level Title"
  "childrens" => array:1 [?
    "data" => array:16 [?          ?-------- it need remove!
      0 => array:2 [?
        "key" => 2 …
Run Code Online (Sandbox Code Playgroud)

php

6
推荐指数
1
解决办法
963
查看次数

如何建立有关系的口才模型?

如何建立有关系的口才模型?

我有:

人表

id
firstname
lastname
Run Code Online (Sandbox Code Playgroud)

员工表

id
person_id
position
Run Code Online (Sandbox Code Playgroud)

我想做这样的事情:

Employee::create([
'firstname' => 'Jack',
'lastname' => 'London',
'position' => 'writer'
])
Run Code Online (Sandbox Code Playgroud)

我知道,可以创建两个模型,然后将它们关联。但是也许有办法使它更美丽吗?

laravel eloquent laravel-5 laravel-5.2

6
推荐指数
2
解决办法
1万
查看次数

Eloquent:如何获得所有多态模型?

在这个解决方案中,来自 Laralvel/Eloquent 的官方文档(多态关系

posts
    id - integer
    title - string
    body - text

videos
    id - integer
    title - string
    url - string

comments
    id - integer
    body - text
    commentable_id - integer
    commentable_type - string
Run Code Online (Sandbox Code Playgroud)

我们可以检索帖子或视频: $post = App\Post::find(1)或者 $post = App\Post::all()

我们可以得到具体的评论

$comment = App\Comment::find(1);
$commentable = $comment->commentable;
Run Code Online (Sandbox Code Playgroud)

在这种情况下,可注释的方法将返回具体PostVideo模型。

但是如何将所有评论整合为集合,其中每个项目PostVideo模型将在哪里?App\Comment::all()预期从评论表返回记录,这不是我们需要的。

laravel eloquent

6
推荐指数
1
解决办法
3179
查看次数

Laravel Eloquent:如何通过whereHas()方法获取相关记录?

例如,我可以查看具体日期的每个帖子.

$users = User::whereHas('posts', function($q){
    $q->where('created_at', '>=', '2015-01-01 00:00:00');
})->get();
Run Code Online (Sandbox Code Playgroud)

但是假设,如果我想比较一个帖子模型日期(created_at)和用户模型的日期属性该怎么办?

例如:

$users = User::whereHas('posts', function($q){
    $q->where('created_at', '>=', ** $user->customDate ** ? look this);
})->get();
Run Code Online (Sandbox Code Playgroud)

UPD.我在Laravel之外使用Eloquent.

laravel eloquent

5
推荐指数
1
解决办法
755
查看次数

标签 统计

eloquent ×3

laravel ×3

laravel-5 ×1

laravel-5.2 ×1

php ×1