中文字幕av专区_日韩电影在线播放_精品国产精品久久一区免费式_av在线免费观看网站

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

使用Laravel5.1 框架怎么實現模型多態關聯

發布時間:2021-04-13 15:55:16 來源:億速云 閱讀:120 作者:Leah 欄目:開發技術

使用Laravel5.1 框架怎么實現模型多態關聯?很多新手對此不是很清楚,為了幫助大家解決這個難題,下面小編將為大家詳細講解,有這方面需求的人可以來學習下,希望你能有所收獲。

1 實現多態關聯

1.1 文章表的結構

  public function up()
  {
    Schema::create('articles', function (Blueprint $table) {
      $table->increments('id');
      $table->string('title');
      $table->text('body');$table->timestamps();
    });
  }

1.2 視頻表結構

  public function up()
  {
    Schema::create('videos', function (Blueprint $table) {
      $table->increments('id');
      $table->string('title');
      $table->text('description');
      $table->timestamps();
    });
  }

1.3 評論表結構

  public function up()
  {
    Schema::create('comments', function (Blueprint $table) {
      $table->increments('id');
      $table->text('content');
      $table->integer('item_id');
      $table->string('item_type');
      $table->timestamps();
    });
  }

↑ 這里需要指定 item_id 和 item_type 單一介紹一下 item_type 它主要是區別關聯于那張表的 我們這里它只有兩個值:App\Article 或 App\Video。

1.4 編寫多態關聯

Article 和 Video:

  public function comments()
  {
    /**
     * 第二個參數:如果你的前綴是item_ 那么就寫item 如果是別的就寫別的。
     * 第三個參數:item_type
     * 第四個參數:item_id
     * 第五個參數:關聯到那個表的鍵
     * (以上除了第二個參數都可以省略)
     */
    return $this->morphMany(Comment::class, 'item', 'item_type', 'item_id', 'id');
  }

Comment:

  public function video()
  {
    /**
     * 三個參數都可以省略 不過K建議你還是寫全
     */
    return $this->morphTo('item', 'item_type', 'item_id');
  }

使用:

Route::get('/', function () {
  $video = App\Video::find(8);
  foreach ($video->comments as $comment) {
    echo $comment->id . ": " . $comment->item_type;
  }
});

看完上述內容是否對您有幫助呢?如果還想對相關知識有進一步的了解或閱讀更多相關文章,請關注億速云行業資訊頻道,感謝您對億速云的支持。

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

张家界市| 固镇县| 平乡县| 绍兴市| 民丰县| 开平市| 弥勒县| 林西县| 米易县| 河北区| 西乌珠穆沁旗| 湘西| 新晃| 吐鲁番市| 哈尔滨市| 鸡东县| 海阳市| 武鸣县| 新源县| 叶城县| 永州市| 固镇县| 葵青区| 嵩明县| 莱州市| 抚顺市| 潞城市| 龙山县| 安丘市| 望谟县| 宁化县| 辛集市| 古浪县| 绥德县| 漠河县| 新化县| 黄山市| 南召县| 堆龙德庆县| 安阳市| 龙里县|