<?PHP
namespace App;
use Illuminate\Database\Eloquent\Model;
class Post extends Model
{public function user ()
{return $this->belongsTo (User::class)->select (["id","email"]);
}
public function tags ()
{return $this->belongsToMany (Tag::class);
}
}
<?PHP
namespace App;
use Illuminate\Database\Eloquent\Model;
class Tag extends Model
{public function posts ()
{return $this->belongsToMany (Post::class);
}
}
Laravel 框架默认为不带 s 的表名。该 post_tag 表从相关型号名称的字母顺序派生而来,p 比 t 小,所以 post 放前面
<?PHP
namespace App;
use Illuminate\Database\Eloquent\Model;
class PostTag extends Model
{protected $table = "post_tag";}