搜索

首页  >  问答  >  正文

laravel中一对多的问题

我现在有两个表:

一个是协会列表(list)和用户表(user)

list表的字段

list_id(协会id) , list_name(协会名称)

user用户表

user_id(用户id),list_id(所属协会), username(用户名)

请问如何实现:

关联查询获取每个协会下的会员总数

例如:

{"list_name":"AAA协会","user_count":20},
{"list_name":"BBB协会","user_count":211}
...

请问怎么关联呢?

高洛峰高洛峰2824 天前308

全部回复(1)我来回复

  • 大家讲道理

    大家讲道理2017-05-16 16:50:52

    class List extends Model
    {
        protected $fillable = ['name'];
    
        public function users()
        {
            return $this->hasMany(User::class, 'list_id', 'id');
        }
    }
    
    class User extends Model
    {
        protected $fillable = ['list_id'];
    
        public function list()
        {
            return $this->belongsTo(List::class, "list_id", "id");
        }
    }
    
    List::withCount("users")->paginate();

    多看文档。

    回复
    0
  • 取消回复