【问题标题】:Laravel Eloquent, how to select users of certain type from many to many relationshipLaravel Eloquent,如何从多对多关系中选择某种类型的用户
【发布时间】:2014-05-10 02:26:56
【问题描述】:

我是 Laravel 的初学者。查看了网站上的文档,并设法创建了类和用户的多对多关系。

表格结构

用户 课程 用户类

用户表

users_id users_type '学生','老师'

类表

class_id 类名

Uses_​​Classes 表

user_id class_id

课堂模式

<?php       
public function getStudents() {
       return $this->belongsToMany('User', 'cla_use_relationship', 'cla_class_id', 'use_users_id');
        }

?>

管理控制器

 $students = Classroom::find(1)->getStudents;

因此,students 变量填充了 class id = 1 的用户。我需要的是所有类型为 student 的用户。到目前为止,它吸引了所有用户。我尝试执行 where 函数,但没有返回任何用户。

对于初学者了解 laravel 有什么好的资源,尤其是它的 Eloquent 方面,了解什么函数与什么一起工作。

【问题讨论】:

    标签: php mysql laravel eloquent


    【解决方案1】:

    在您的 belongsTo 之后,您可以链接一个 where 子句以将其限制为仅限学生,例如

    public function getStudents() {
        return $this->belongsToMany('User', 'cla_use_relationship', 'cla_class_id', 'use_users_id')
            ->where('users_type', 'student');
    }
    

    要了解 laravel 的基础知识,我建议您查看主文档页面上的资源:@​​987654321@

    Code Bright 可能最适合初学者,然后从那里开始。

    【讨论】:

    • 谢谢你工作得很好。我会看看 Code Bright,看看他们有什么。
    猜你喜欢
    • 2014-05-16
    • 2020-11-08
    • 1970-01-01
    • 2019-06-13
    • 2013-04-03
    • 2020-10-17
    • 2019-03-26
    • 2018-09-17
    • 1970-01-01
    相关资源
    最近更新 更多