Laravel 检查集合是不是包含外键
Posted
技术标签:
【中文标题】Laravel 检查集合是不是包含外键【英文标题】:Laravel Checking If A Collection Contains A Foreign KeyLaravel 检查集合是否包含外键 【发布时间】:2015-01-30 02:26:17 【问题描述】:我想知道是否有一个函数或其他东西,您可以从集合中获取除主键之外的其他元素...例如,如果投票有一个外键“user_id”,我该如何检查这个?在 laravel 文档中,只有一个使用 contains() 检查主键的示例。谁能帮帮我?
检查是否有 id = 2 的投票的示例
@foreach($projects as $project)
@if ($project->votes->contains(2))
//
@endif
@endforeach
我想检查一下是否有一个“user_id”=已登录用户 id 的投票
@foreach($projects as $project)
@if ($project->votes->contains('user_id' == Auth::id()))
//
@endif
@endforeach
【问题讨论】:
【参考方案1】:if ($votes->contains('user_id', auth()->id()))
//
【讨论】:
【参考方案2】:在您的模型中
public static checkForeign($thisId)
( $thisId == Auth::user()->id ) ? return true : return false;
在视图中
@if ( ModelName::checkForeign($project->votes->id) )
// Do something
@endif
【讨论】:
以上是关于Laravel 检查集合是不是包含外键的主要内容,如果未能解决你的问题,请参考以下文章
SQLSTATE [23000]:完整性约束违规:1452 无法添加或更新子行:外键约束失败 - Laravel