首页 > 解决方案 > Laravel 关系/属性到公共链接表

问题描述

让我先说我对 Laravel 非常陌生。我有一个列表框项目表(下面截断的迁移代码):

$table->increments('id');
$table->string('list_item');
$table->string('group');
$table->integer('sort_order')->default(1);

组用于例如“TITLE”、“SPECIALITIES”等。我将 user_title_li_id(在 users 表中)链接到该表的 id,以及 providers 表中的 provider_title_li_id、provider_speciality_li_id 等

如何在 User 和 List Item 模型中建立关系,以便为控制器中的每个模型获取 list_item(例如教授)?

标签: phplaravelmodelscontrollersrelationships

解决方案


在您的用户模型中,定义如下函数:

<?php

namespace App;

use Illuminate\Database\Eloquent\Model;

class User extends Model
{
    /**
     * Get the list items for the user.
     */
    public function listItems()
    {
        return $this->hasMany('App\ListItem', 'foreign_key', 'list_item');
    }
}

推荐阅读