我正在用Laravel8开发一个应用程序,我遇到了非常奇怪的行为。
我有一个叫做“组织”的模型,这个组织有很多用户(来自捷流的模型)。
我像往常一样做了关系:
在组织模式中:
public function users()
{
return $this->hasMany(User::class);
}
在用户模型中:
public function organisation()
{
return $this->belongsTo(Organisation::class);
}
我在用户表上有一个名为Organization_id的字段,在迁移中声明如下:
$table->foreignId('organisation_id')->nullable()->constrained();
我检查了数据库,所有的东西都填进去了,没有空值。
预期结果:如果我打电话
$testUser=User::find(1);
$testOrg=$testUser->organisation();
我将获取组织对象。
实际结果:我收到一个Veeeery日志对象,它声明了一些包括递归的内容,而不是我想要的组织。这是关于外键的错误吗?用户模型也与不同的模型有归属关系,这是标准的归属关系吗?
EDIT我可以在打电话时收到组织
$testUser=User::with('organisation')->find(1);
但这不是我想使用的干净的Laravel方式。
我用$testOrg=$testUser调试了这个查询-
那么“哪里”错了?
任何提示或帮助将不胜感激
以下是一些输出:(整个输出太长)
NULL[“记住令牌”]=
试试这个:
$testUser=User::with('organisation')->find(1);
如果你想继续你的方式,然后更新到这个:
$testUser=User::find(1);
$testOrg=$testUser->organisation;
我已经在Laravel项目中通过php artisan make:auth命令生成了注册表单。我想通过添加一些功能来定制它,用户可以在注册时选择自己的性别。我制作了一个genders表,该表的genders列包含两个值Man和Woman,并在users表中添加了gender_id列。我有很多关系,但当我尝试注册用户时,他已注册,但性别id列仍然为空。我不知道错在哪里。感谢您的帮助。这是我的密码。
Hibernate版本-5.3.4。最终版本,mysql连接器版本-8.0.12 我在帖子和帖子内容之间有一个关系: 帖子: 后内容: 我一直试图让PostContent的负载变懒,但没有什么工作。 我添加到关系提取=FetchType. LAZY,可选=false, 我加入了冬眠。cfg。xml此属性: 这个maven插件: 要启用字节码增强, 添加, 我试图改变Hibernate版本(5.2,
这是项目迁移 这是时间表 这样用户就可以迁移了 这是我的项目模型 这是我的时间表模型: 这是我的用户模型 现在,我从项目返回我的查询 这是可以的,但user_id用户在timesheets.user_id我不能得到它的时间表,并得到它 此控制器按时间表中的项目id返回项目和时间表,但时间表中的用户id我不知道如何将其输入系统
我正在尝试使用透视表实现多对多关系。我的透视表的名称是“post_-tag”,列名是“post_-id”和“tag_-id”。post和tag模型类如下所示。 标签类别如下所示: post_tag表如下: 我正在使用以下代码尝试帖子的标签: 但它抛出了一个错误: 查询连接中的异常。php第729行:SQLSTATE[42S22]:未找到列:1054个未知列的“posts”。where子句中的pos
我刚刚开始学习LaravelV3,我试图通过创建一个博客来了解eloquent的一对多关系。我的帖子与类别有多对一的关系(每个帖子都链接到一个类别)。 我有以下表格和以下字段: 帖子:id、标题、正文、创建日期、类别id 类别:id、名称 我有以下两种型号: 我想出了如何通过传递类别id来获得所有帖子: 我只是需要帮助,找出如何获得所有的职位,并得到他们的更正类别。因此,在视图中的一天结束时,我可