laravel - 为 Laravel 模型添加属性
问题描述
我有用户模型,我想添加这个用户是否合格,我有一些查询来确定,
用户.php
....
public function getIsQualifiedAttribute($value)
{
return $this->qualified()->first() ? true : false;
}
public function scopeQualified($query)
{
return $query->where("years_of_experience",">=",5);
}
这就是我想要打印的方式
{{$user->is_qualified}}
但我不能让它工作,它一直给我错误的价值。
解决方案
如果您已经拥有要检查其属性的模型实例,则无需对同一个表进行另一次查询。只需让访问者检查years_of_experience
模型的字段:
public function getIsQualifiedAttribute()
{
return $this->years_of_experience >= 5;
}
{{ $user->is_qualified ? 'Y' : 'N' }}
使用您当前的设置,您正在对数据库进行查询以获取years_of_experience >= 5
每次访问器被击中时的第一条记录。如果该表中有任何years_of_experience >= 5
记录,则将返回true
.
推荐阅读
- python - 在 Anaconda 提示符下工作的命令提示符下无法识别 Pip
- jquery - 如何将元素的值放入 .html()
- spring-boot - 无法在 Spring Boot 应用程序中打开 ServletContext 资源
- pdf - 如何打印与 solr 7.6.0 中的搜索查询匹配的 pdf 的实际内容
- java - Thorntail + Lombok 构建器失败
- python - 如何在数据框的开头插入列向量?
- c# - 将 Include() 调用替换为 Select()
- php - 使用多个变量将数据类型添加到数据库中
- python - 从子目录链接导入
- r - R:警告消息:在 Ops.factor(data1$Quality, " ") : '>' 对因素没有意义