在 laravel 中链接 2 个数据集的最有效方法
most efficient method of chaining 2 data sets in laravel
现在如果我问的问题太具体,你可以骂我 Laravel,但我想知道,将 2 个数据集与 [ 中的工具链接在一起的最有效方法是什么=23=].
在使用 eloquent 关系和使用查询构建器连接之间进行选择时,我应该使用特定的思维方式吗?或者我应该考虑在更小或更大的数据集上使用查询构建器的任何缺点?
我正在构建一个票务系统,它只需要用户的一个或两个字段 table,此时考虑使用关系似乎太过头了,但如果系统需要增加,它可能导致混乱的代码。这是关系要解决的情况吗?
在使用 eloquent 关系时是否会发生任何我应该注意的耦合类型的操作?
如果我真的不清楚我是如何提出问题的,我会尝试重新措辞。
我想你会像我一样发现,在你的 Eloquent 模型中设置几个简单的关系方法可以释放 Eloquent 的力量(因此也很容易和简单)。例如,您是愿意编写自定义联接代码还是使用如下结构:
foreach($user->tickets as $ticket) { ... etc ... }
听起来你对 Laravel 很陌生。我强烈建议阅读 Laravel manual. There are many great examples. Also there is a Laracast video tutorial on Relationships here 中有关关系的页面。我与该网站没有隶属关系。
工单class:
<?php
class Ticket extends Model {
public function user() {
return $this->belongsTo('User');
}
}
用户class:
<?php
class User extends Model {
public function tickets() {
return $this->hasMany('Ticket');
}
}
只要您的表格设置如下:
tickets (table)
- id
- user_id
users (table)
- id
此示例假定模型位于全局命名空间中。然后你可以像这样从工单中获取用户数据:
$ticket->user->first_name
$ticket->user->last_name
现在如果我问的问题太具体,你可以骂我 Laravel,但我想知道,将 2 个数据集与 [ 中的工具链接在一起的最有效方法是什么=23=].
在使用 eloquent 关系和使用查询构建器连接之间进行选择时,我应该使用特定的思维方式吗?或者我应该考虑在更小或更大的数据集上使用查询构建器的任何缺点?
我正在构建一个票务系统,它只需要用户的一个或两个字段 table,此时考虑使用关系似乎太过头了,但如果系统需要增加,它可能导致混乱的代码。这是关系要解决的情况吗?
在使用 eloquent 关系时是否会发生任何我应该注意的耦合类型的操作?
如果我真的不清楚我是如何提出问题的,我会尝试重新措辞。
我想你会像我一样发现,在你的 Eloquent 模型中设置几个简单的关系方法可以释放 Eloquent 的力量(因此也很容易和简单)。例如,您是愿意编写自定义联接代码还是使用如下结构:
foreach($user->tickets as $ticket) { ... etc ... }
听起来你对 Laravel 很陌生。我强烈建议阅读 Laravel manual. There are many great examples. Also there is a Laracast video tutorial on Relationships here 中有关关系的页面。我与该网站没有隶属关系。
工单class:
<?php
class Ticket extends Model {
public function user() {
return $this->belongsTo('User');
}
}
用户class:
<?php
class User extends Model {
public function tickets() {
return $this->hasMany('Ticket');
}
}
只要您的表格设置如下:
tickets (table)
- id
- user_id
users (table)
- id
此示例假定模型位于全局命名空间中。然后你可以像这样从工单中获取用户数据:
$ticket->user->first_name
$ticket->user->last_name