Quantcast
Channel: How to use many to many polymorphic relation in Laravel 5.2 - Stack Overflow
Viewing all articles
Browse latest Browse all 2

How to use many to many polymorphic relation in Laravel 5.2

$
0
0

I am reading laravel 5.2 docs to implement many to many polymorphic relation in my Laravel Application.I have Many models like Blog, Question, Photo etc and I want to have Tagging system for all of them.I have created Tag table with following schema

  Schema::create('tags', function (Blueprint $table) {        $table->increments('id');        $table->string('name');        $table->string('slug')->unique();        $table->timestamps();    });

Below is pivot table schema. Pivot table name is entity_tags

Schema::create('entity_tags', function (Blueprint $table) {     $table->increments('id');     $table->integer('tag_id')->unsigned();;     $table->integer('taggable_id')->unsigned();     $table->string('taggable_type');     $table->timestamps();     $table->index('tag_id');     $table->index('taggable_id');     $table->index('taggable_type');});

This is the relationship defined in Tag model for Question model

public function questions(){    return $this->belongsToMany('App\Question', 'entity_tags', 'tag_id', 'taggable_id');}

And the following relation is defined in Question Model

public function tags(){    return $this->belongsToMany('App\Tag', 'entity_tags', 'taggable_id', 'tag_id');}

Now I want to define Many to Many Polymorphic relationship as defined in Laravel 5.2.
My Question are

  • how I can define them?
  • Should I remove the Many to Manyrelationship and only define Many to Many polymorphic relationship ?If yes, then how to manage custom pivot table name ?
  • Also is it required to suffix column name with word able that are part ofpolymorphic relationship ?

Viewing all articles
Browse latest Browse all 2

Latest Images

Trending Articles





Latest Images