当前位置: 首页 > 知识库问答 >
问题:

Laravel雄辩所有与关系

左丘照
2023-03-14
*users*
id
username
password
...

*address*
id
address
user_id
...

我试着补充:

public function users(){
  return $this->belongsTo('Users', 'user_id');
}

并用address::with('users')->get()调用,但响应为空。

共有1个答案

勾喜
2023-03-14

您的用户类是名为users还是user?除非您重写它,否则Eloquent处理名称的默认方式可以在文档(源代码)中找到:

请注意,我们没有告诉Eloquent将哪个表用于我们的用户模型。类的小写复数名称将用作表名,除非显式指定了另一名称。因此,在本例中,Eloquent将假设用户模型将记录存储在users表中。您可以通过在模型上定义table属性来指定自定义表

因此,我相信如果您将地址模型中的代码更改为:

public function users(){
  return $this->belongsTo('User', 'user_id');
}
 类似资料:
  • 我有三种模式——博客、帖子、评论。博客有很多帖子,帖子有很多评论 当我写作时 它会给所有的博客发帖子和评论。但我将如何获得那些由管理员用户创建的博客,即评论表中的用户id。在哪里写入

  • 我是Laravel5.2的新手,正在开发一个遗留系统,对雄辩有点困惑,希望有人能给我代码。 共有3个表格: 卡片类别卡片2类 卡片可以是许多类别的一部分,这些类别保存在cards2cat表中。 cards2cat表的结构如下 id(主键)图像(卡)类别 我想做的是在Cards模型中有一个方法,名为getCardsWithCategors,它返回Cards信息和category表中类别的名称。 ca

  • 我有以下三个表格: 所以基本上这种关系就像: 用户有许多项目 项目属性到客户端 我的问题是: 如何使用eloquent获得用户的所有客户端? 似乎我不能用户hasManyPass方法,因为在客户端表中没有project_id。 因此,我希望达到的目标是:

  • 我被一个简单的任务困住了。我只需要这通电话的结果 其中,是一个模型。我试过这个 但它不起作用。从表中获取所有数据并对其进行排序的更好方法是什么?

  • 我正在编写php代码,对于当前的项目,我正在使用laravel框架(带有雄辩的ORM)。在这个项目中,我创建了两个表:用户和任务。我想在这些表之间创建一个“一对多”的关系。因此,一个用户可以有许多任务。在Tasks类中,我创建了方法所有者(): 但是当我以前得到用户名的时候 我得到这个异常:未定义的属性:illumb\Database\Eloquent\Relations\BelongsTo::$

  • 在Laravel 5.1中,我可以看到表列关系可以通过两种方式设置: 1) 在迁移表中定义外键。 2)定义模型中的雄辩关系。 我已经阅读了文件,我仍然对以下内容感到困惑: > 我是需要同时使用这两个还是只需要1个? 两者同时使用有错吗?还是让它变得多余或者引起冲突? 使用有说服力的关系而不在迁移列中提及外键有什么好处? 有什么区别? 这些是我现在掌握的密码。我仍然不清楚是否需要删除迁移文件中设置的