laravel - 如果有相同的数据,如何在 EAV laravel 中检索一个数据
问题描述
我有一个 EAV 实体属性值模型的数据库,如果有相同的数据,我如何只显示一次相同的数据?例如我有表用户
id user_id name user_value_name user_value
1 2 vandy useraddress new york
3 2 vandy userscore_tesA 90
4 2 vandy userscore_tesB 30
5 3 ahmad useraddress japan
6 3 ahmad userscore_tesA 80
7 3 ahmad userscore_tesB 70
如何让我的名字只显示一次?这里我将使用jquery select2来显示数据
$('#name').select2({
placeholder: "Choose User...",
ajax: {
url: "{{ route('getUserFullname') }}",
dataType: "json",
delay: 250,
processResults: function(data) {
return {
results: $.map(data, function(obj) {
return {
"id": obj.user_id,
"text": obj.name,
};
})
};
},
}
});
在我的控制器中,我只从数据库和 json 的返回响应中获取数据
$user = DB::table(users)->get();
return response()->json($user);
解决方案
你可以使用distinct
Laravel 的QueryBuilder中的方法来解决这个问题。
$user = DB::table(users)->distinct('name')->get();
return response()->json($user);
从本质上讲,这是 Laravel 中调用 SQL 的一种很好SELECT DISTINCT
的方式......
推荐阅读
- dart - 解析 JSON 文件以获取列表中的列表
- c# - 如何使用 lambda 表达式在 Entity Framework 中加入两个实体?
- mysql - 显示变量的默认值
- web - 我想通过同一个组件处理路由参数和查询字符串参数
- java - 没有乘法、除法和“for”循环的埃拉托色尼筛子
- firebase - 如何创建阻止用户添加大于现在的日期的规则
- javascript - if 和 else 都在执行 Javascript/JQuery
- c - 如何使用 scanf 检查“\n”
- python - 如何在 Python 2 中从字符串中引用变量
- ruby - 是否可以将所有变量和方法放在一个类中?