- android - RelativeLayout 背景可绘制重叠内容
- android - 如何链接 cpufeatures lib 以获取 native android 库?
- java - OnItemClickListener 不起作用,但 OnLongItemClickListener 在自定义 ListView 中起作用
- java - Android 文件转字符串
1 "user_id" => 1 "name" => "Test Case-6ren">
我想通过以下方式修改关系的结果集
我有这个数组
array:11 [▼ "id" => 1 "user_id" => 1 "name" => "Test Case" "created_at" => "2017-08-25 17:12:26" "updated_at" => "2017-08-29 11:59:46" "hashid" => "5LOkAdWNDqgVomK" "user" => array:8 [▶] "order" => array:8 [▶] "classification" => array:2 [▼ 0 => array:9 [▼ "id" => 1 "case_id" => 1 "method" => "facial_map_manual" "strong" => 2.0 "dynamic" => 30.0 "delicate" => 50.0 "calm" => 18.0 "created_at" => "2017-08-31 11:00:00" "updated_at" => "2017-08-31 11:00:00" ] 1 => array:9 [▼ "id" => 2 "case_id" => 1 "method" => "interview" "strong" => 20.0 "dynamic" => 25.0 "delicate" => 30.0 "calm" => 25.0 "created_at" => "2017-08-31 11:00:00" "updated_at" => "2017-08-31 11:00:00" ] ] "classification_data" => array:3 [▼ 0 => array:6 [▼ "id" => 1 "case_id" => 1 "type" => "facial_points" "data" => null "created_at" => "2017-08-31 11:00:00" "updated_at" => "2017-08-31 11:00:00" ] 1 => array:6 [▼ "id" => 2 "case_id" => 1 "type" => "interview" "data" => array:4 [▶] "created_at" => "2017-08-31 12:00:00" "updated_at" => "2017-08-31 11:00:00" ] 2 => array:6 [▶] ] "teeth_configuration" => array:6 [▶] ]
I want to map classification and classification_data by column key ( type OR method ) which are loaded relationships. This is the query:
$case = RCase::with(['user','order','classification','classificationData','teethConfiguration'])->where('id',$id)
->first();
这是我目前尝试过的
$case->classificationData = $case->classificationData->keyBy('type')->toArray();
使用第一种方法,它们按类型排序,但旧的 classification_data 会保留在那里,即使尝试
unlink($case->classification_data)这不是什么大问题...我也可以使用 分类来做到这一点,但数据保持不变。
有什么方法可以直接在加载的关系模型中执行 keyBy() 吗?提前致谢
PHP Version: 7.1Laravel Version: 5.4.38OS: Ubuntu 16.04 LTS
最佳答案
您可以用这段代码替换关系:
$case->setRelation("classification_data",$case->classificationData->keyBy('type'));
要替换关系,您必须提供相同的关系名称,否则 laravel 将创建另一个关系。
当你这样做时:
$case->classificationData = something
您实际上是在向模型对象添加一个新属性。
关于php - Laravel Eloquent 关系 keyBy(),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/45987487/
1.概述 转载并且补充: flink keyby 分布不均匀问题 我使用随机数random.nextint(8)作为key,生成keyedstream之后,直接sink到存储中,但是sink算子只有四
我有一个对象数组,我想将它转换为以 id 为键的键值对映射。但是,我想在根级别和 recipes 属性中执行此操作。 数组resp: [ { "id": "1", "recipes
我有一个数组,我想将其转换为一个对象。例如: const arr = [{id: 1, key: ''}, {id: 2, key: ''}]; 我想要的结果是: const object = { 1
是否有使用 lodash 实现此目的的简单方法? _.something([{a: 3, b: 4}, {a: 3, b: 5}, {a: 10}], 'a') => { 3: [ {a: 3, b:
在 Java Spark 中,我可以使用 keyBy() 或 mapToPair() 为 JavaRDD 创建一些键。使用 keyBy() 使我的意图更加清晰,并使用更少代码的参数函数(该函数返回一个
我正在使用 Laravel Collections 方法,并试图通过 id 来键入我的查询结果(这是一个集合)。问题是我有多个具有相同 ID 的条目,但指向不同的国家,我想拥有所有的值,而不仅仅是最后
我想通过以下方式修改关系的结果集 我有这个数组 array:11 [▼ "id" => 1 "user_id" => 1 "name" => "Test Case
我正在开发一个项目,使用 Laravel 设置后端 RESTful API,使用 angularJS 设置前端。 我从我的 Controller @index 返回简单 all()->toArray(
进入 Flink job 的数据可能会因为代码中的错误或缺乏验证而触发异常。我的目标是提供一致的异常处理方式,我们的团队可以在 Flink 作业中使用这些方式,而不会导致生产中断。 重启策略似乎不适用
我创建了一个命令,并尝试查询我的数据库并按键对结果进行分组,但我不断收到此错误: In Builder.php line 2512: Method Illuminate\Database\Quer
这是我想在 Apache Flink 中执行的操作: 输入DataStream然后按字段键 x然后做一个每分钟滑动一次的 15 分钟窗口,聚合每个键的结果 ( x ),然后将所有这些聚合聚合到一个列表
我正在使用 Flink 1.4.2,我有一个场景需要使用两个键。 例如 KeyedStream keyedStream = stream.keyBy("clusterId", "ssid"); usa
我正在尝试通过尽可能避免洗牌来优化我的 Spark 工作。 我正在使用 cassandraTable 创建 RDD。 列族的列名是动态的,因此定义如下: CREATE TABLE "Profile"
例如,假设我的数组中有一些用户对象: [{name: "Bob", ID: "123", location: "Texas"}, {name: "Jill", ID: "124", location
说我有这个数据集 test test[, X, keyby = .(X)] X X 1: 1 1 > test[, Y == "a", keyby = .(X)] X V1 1: 1
我是一名优秀的程序员,十分优秀!