首页 > 解决方案 > Laravel BelongsTo 关系查询日志中的 0 = 1

问题描述

我只是想使用BelongsTo关系来检索记录,这是方案:

roles:
- id
- title
users:
- id
- Role_ID

我正在使用SQL Server数据库,所以我认为Role_ID可以指向role_id:D。

这是模型中的属于关系的代码User

public function role()
    {
        return $this->belongsTo('App\Role');
    }

我也试过这样:

public function role()
    {
        return $this->belongsTo('App\Role', 'id', 'Role_ID');
    }

但无论参数是什么,它都不起作用,当我得到查询日志时,它看起来像:

bindings: []
query: "select * from [roles] where 0 = 1"
time: 1.49

这是我尝试访问关系的方法Controller

User::with(['role'])->get($someColumns)

我只是多次与这个问题作斗争,但不知道问题出在哪里。

任何帮助表示赞赏。

谢谢大家。

标签: sql-serverlaraveleloquentrelationship

解决方案


在您的模型中尝试这种关系。

public function role()
{
   return $this->belongsTo('App\Role', 'Role_ID','id');
}

推荐阅读