Database 雄辩的关系计数问题
我目前有以下问题:Database 雄辩的关系计数问题,database,laravel,eloquent,Database,Laravel,Eloquent,我目前有以下问题: $eloquentEntity->relation->count() 及 有时返回两个不同的值(第一个值有时为零)。奇怪的是,尽管所有$Eloquentity都是批量检索的,但只是有时候值是不同的 $Eloquentity是使用 $eloquentEntities = EloquentEntity::with(['relation'])->get() 因此,在关系集合上运行count()时,该关系中包含的所有内容都应该可用 有人知道我做错了什么吗?你可以
$eloquentEntity->relation->count()
及
有时返回两个不同的值(第一个值有时为零)。奇怪的是,尽管所有$Eloquentity都是批量检索的,但只是有时候值是不同的
$Eloquentity
是使用
$eloquentEntities = EloquentEntity::with(['relation'])->get()
因此,在关系集合上运行count()
时,该关系中包含的所有内容都应该可用
有人知道我做错了什么吗?你可以使用计数属性,例如:
public function getReferalUsersAttribute()
{
return $this->hasMany('App\User', 'referal_id' , 'id')->count();
}
并在模型中附加这样的属性
protected $appends = [
'referal_users'
];
您可以使用计数属性,例如:
public function getReferalUsersAttribute()
{
return $this->hasMany('App\User', 'referal_id' , 'id')->count();
}
并在模型中附加这样的属性
protected $appends = [
'referal_users'
];
您可以使用
withCount()
方法计算关系金额。像这样的
$eloquentities=eloquentity::withCount('relation')->get();
foreach($row形式的口才){
echo$row->relationship_count;//打印关系计数
}
您还可以查看以了解更多信息您可以使用
withCount()
方法计算关系金额。像这样的
$eloquentities=eloquentity::withCount('relation')->get();
foreach($row形式的口才){
echo$row->relationship_count;//打印关系计数
}
如果count关系实体尝试这样的代码,您还可以查看更多信息
$posts = App\Post::withCount('comments')->get();
foreach ($posts as $post) {
echo $post->comments_count;
}
如果计数关系实体尝试以下代码
$posts = App\Post::withCount('comments')->get();
foreach ($posts as $post) {
echo $post->comments_count;
}
我刚刚找到了解决方案:我们使用UUID作为主键,但忘记设置
public$keyType='string'代码>在我们的模型上。他们在默认情况下将键解释为整数,出于某种原因,这在UUID中大部分时间都有效。我刚刚找到了解决方案:我们使用UUID作为主键,但我们忘记设置public$keyType='string'代码>在我们的模型上。他们在默认情况下将键解释为整数,出于某些原因,这在UUID中大部分时间都有效。尝试sizeof($eloquentity->relation)
检查此项使用此计数($eloquentity->relation)
在使用$eloquentity->relation->count()
之前,您是否已检索到关系?如果是这样的话,它是否受到任何方式的约束,例如where子句?请尝试sizeof($eloquentity->relation)
检查此项使用此count($eloquentity->relation)
在使用$eloquentity->relation->count()
之前,您是否已检索到关系?如果是,是否以任何方式对其进行了约束,例如where条款?