Почему не выводятся тэги при полиморфной связи в Laravel 5.6?

Потребовалось на сайте добавить полиморфные связи для получения доп. данных блогов (мой сайт - это блог).

Что я имею:
БД
Tags:
5aa61b4e3bb03085738922.pngTaggables:
5aa61b52da6fb976282621.pngBlogs:
5aa61b5864514743680757.png
Код
Blogs:
<?php
namespace App\Models\Blogs;

use App\User;
use Illuminate\Database\Eloquent\Model;

class Blogs extends Model{

    protected $table = 'blogs';
    protected $primaryKey = 'id';
    protected $fillable = [];
    protected $hidden = [];
    protected $casts = [];

    public static function getBlogs(int $paginate = 10){
        $blogs = Blogs::paginate($paginate);

        if($blogs){
            $blogs->load('author');
            $blogs->load('tags');
        }

        return $blogs;
    }

    /*
     *  Отношения
     */

    /**
     * Получение авторов блогов
     * @return \Illuminate\Database\Eloquent\Relations\HasOne
     */
    public function author(){
        return $this->hasOne(User::class, 'id', 'author_blogs');
    }

    /**
     * Получение тэгов у блога
     * @return \Illuminate\Database\Eloquent\Relations\MorphToMany
     */
    public function tags(){
        return $this->morphToMany(Tags::class, 'taggable');
    }
}


Tags:
<?php
namespace App\Models\Blogs;

use Illuminate\Database\Eloquent\Model;

class Tags extends Model{

    protected $table = 'tags';
    protected $primaryKey = 'id';
    protected $fillable = [];
    protected $hidden = [];
    protected $casts = [];

    /*
     * Отношения
     */

    /**
     * Полиморфное отношение блогов с тэгами
     * @return \Illuminate\Database\Eloquent\Relations\MorphToMany
     */
    public function blogs(){
        return $this->morphedByMany(Blogs::class, 'taggable');
    }
}



И в итоге я получаю только блоги и его авторов, но ни как не сами тэги. Подскажите куда копать, пожалуйста!)
  • Вопрос задан
  • 68 просмотров
Решения вопроса 1
@AibekAS
В базу данные вручную добавлял? Потому что как я помню, Лара в taggable_type хранит класс, типа "App\Blog".
Может в этом ошибка?
P.S. У тебя класс представляет сущность(одну), поэтому рекомендую переименовать на Blog, Tag.
Ответ написан
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через TM ID
Похожие вопросы
15 авг. 2018, в 22:39
60000 руб./за проект
15 авг. 2018, в 22:01
6000 руб./за проект
15 авг. 2018, в 21:18
30000 руб./за проект