首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
社区首页 >问答首页 >更新深嵌套结构

更新深嵌套结构
EN

Stack Overflow用户
提问于 2016-09-20 03:35:34
回答 2查看 3.4K关注 0票数 7

因此,假设我有以下结构:

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
%Car{details: [%CarDetail{prices: [%Price{euro: 5}]}]}

我想把另一个价格结构添加到汽车细节的价目表中,我该怎么做呢?

显然,真正的例子要深得多,所以我不能使用模式匹配,也不能想出一种使用put_in/3之类的方法。

如果能提供一些帮助,我们将不胜感激。谢谢。

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2016-09-20 04:34:18

您可以使用Kernel.update_in/3遍历嵌套结构。它不能简单地将密钥列表传递给update_in,因为结构和列表都不实现访问协议。这就是Access.key!/1Access.all进来的地方。不过,请注意,下面的代码将添加到所有汽车细节的价格,如果有多个。如果您只需要更新特定的详细信息,则可以使用Access.at/1实现您自己的访问功能

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
update_in car, [Access.key!(:details), Access.all, Access.key!(:prices)], fn(prices) ->
  [%Price{euro: 12345} | prices]
end
票数 17
EN

Stack Overflow用户

发布于 2017-04-14 06:06:49

put_in/2使得这很容易:

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
def add_price(%Car{details: %CarDetails{prices: prices}} = car, new_price) do
  put_in(car.details.prices, [%Price{euro: new_price} | prices])
end
票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/39593009

复制
相关文章
巧用for循环嵌套结构
在python中,我们学习并掌握了for循环嵌套结构,for循环嵌套结构能够帮我们解决身边的一些数学问题
算法与编程之美
2022/04/08
6660
MONGODB 嵌套数组更新 与 设计
(注:最近我发现MONGODB 的文字,大家好像不大感兴趣,不知道是大家的公司不使用MONGBDB 还是由于MONGODB 太稳定,所以就忽略了,其实MONGODB 可以聊的话题和使用的范围很大,有的公司可能主力数据库就是MONGODB 所以MONGODB 确实不是可有可无的)
AustinDatabases
2019/09/05
3.3K0
MONGODB  嵌套数组更新 与   设计
嵌套是什么意思_循环结构能不能嵌套
就下面的代码示例来说,外部的repeater控件是 rptTr ,内部的repeater控件是 rptTd 。需要在 rptTr 的 onitemdatabound 的处理函数中动态绑定数据源。
全栈程序员站长
2022/11/08
4410
ES更新嵌套数组(使用Java API)
最近在学习ElasticSearch,前些天在工作中遇到一个难以解决的问题,问题正如标题所示在使用Java TransportClient更新ES复杂数据结构数组,最后请教大佬问题得以解决。此文章将详细描述问题并提供解决办法。
allsmallpig
2022/01/06
2.7K0
mysql索引结构与深分页优化
B-树,这里的 B 表示 balance( 平衡的意思),B-树是一种多路自平衡的搜索树。它类似普通的平衡二叉树,不同的一点是B-树允许每个节点有更多的子节点。
山行AI
2020/03/26
1.5K0
Golang之旅16-嵌套结构体
内容 嵌套结构体 不同的结构体之间的命名冲突 结构体的继承实现 嵌套结构体 一个结构体中可以嵌套包含另一个结构体或结构体指针 package main import "fmt" type Address struct { Provice string //字段名称 字段类型 City string } type User struct { Name string Gender string Address Address //类型是上面的Address类型 } // 结构体的
皮大大
2021/03/02
8280
Spark Java UDAF 输入struct嵌套结构
虽然Spark3.0.0的官方文档1已对Spark Java UDAF进行了说明,并且有example代码。因此本文主要解决在实际开发过程中,遇到的2种问题:
mikeLiu
2020/08/11
2.1K1
C语言循环结构与循环嵌套-学习十
break语句和continue语句 用break语句提前终止循环。 break语句可以用来从循环体内跳出循环体,即提前结束循环,接着执行循环下面的语句。 只能用于循环语句和switch语句之中,而不能单独使用 用continue语句提前结束本次循环。 有时并不希望终止整个循环的操作,只希望提前结束本次循环,而接着执行下次循环,这时可以用continue语句。 break语可和continue语句的区别: continue语句只结束本次循环,而不是终止整个循环的执行。 break语句结束整个循环过程,不再
XG.孤梦
2022/02/28
1.9K0
C语言循环结构与循环嵌套-学习十
gorm查询嵌套结构体,嵌套预加载preload,关联,外键foreignkey,引用references
一直想用gorm查询到嵌套结构体,可惜自定义嵌套结构体好像不支持?下次按这个思路再试试,可能也行哦。
hotqin888
2020/12/16
6.1K0
Go语言中的结构体嵌套与组合
在Go语言中,一个结构体(struct)可以包含一个或多个其他结构体的实例,这种特性可以帮助我们编写更加清晰、可重用和易于维护的代码。本文将详细介绍Go语言中的两种主要的结构体组织方式:结构体嵌套和结构体组合,以及如何根据不同的场景来选择使用它们。
运维开发王义杰
2023/08/10
1.6K0
Go语言中的结构体嵌套与组合
gorm将查询结果映射到自定义嵌套结构体,嵌套预加载
我在前面的文章中多处提到gorm如何将查询结果映射到自定义结构体,都没解决,本次就解决了。
hotqin888
2022/03/10
3.9K0
【Elasticsearch】Nested嵌套结构数据操作及聚合查询
ES的Nested数据类型允许我们存储一对多的数据,例如一个文章可以对应多个评论等,在正式开始之前,我们先生成一个用于测试的索引:
明月AI
2022/02/23
6.6K0
【Elasticsearch】Nested嵌套结构数据操作及聚合查询
Power BI可视化图表的层次结构嵌套设置
大海:这种效果其实就是“展开层次结构中的所有下移级别”功能实现的(x)轴的嵌套啊。
大海Power
2021/08/30
2.1K0
从嵌套结构中取值时如何编写兜底逻辑
对a解构时赋予的默认值(空数组),仅当b.a的值为undefined时才会生效,如果b.a的值为null,默认值就无法生效,使得第二行调用map方法的代码直接报错,所以第一行代码兜底并没有做好。
大史不说话
2020/11/03
2.9K0
PHP | 条件嵌套、循环嵌套、条件循环相嵌套
demo: 假设在发3月工资的时候,不仅判定性别,还要判定男性是否有房,没有房,可以发放住房补贴,对于女性,判定是否怀孕,怀孕还有怀孕补贴:
凌川江雪
2019/03/08
4.2K0
for嵌套
一、for嵌套 1.1、for嵌套if 案例: 输出1-9,当输出5时停止输出 案例代码 #!/bin/bash # #Author: www.zutuanxue.com #Created Time: #Release: #Description:输出1-9,当输出5时停止输出 for ((num=1;num<10;num++)) do echo $num [ $num -eq 5 ]&& break done 1.2、for嵌套for 案例: 打印99乘法表 案例
星哥玩云
2022/09/15
1.4K0
结构体成员赋值到底是深拷贝还是浅拷贝?
在《C语言容易忽略的知识点》一文中,有读者说这种结构体复杂成员赋值的的拷贝是浅拷贝(感谢读者提出),那么到底什么是深拷贝,什么是浅拷贝?
编程珠玑
2020/02/11
3.3K0
结构体成员赋值到底是深拷贝还是浅拷贝?
MySQL 嵌套查询_嵌套查询和嵌套结果的区别
where course.cno=sc.cno and course.cname=’数据库’ and grade>=80)[/code](3)查询计算机系最高成绩。
全栈程序员站长
2022/09/22
4.3K0
SQL嵌套查询_sql差集嵌套
派生表就是一个由查询结果生成的临时表。他是在外部查询的 FROM 中定义的。派生表的存在范围只是在外部查询中,只要外部查询结束了,派生表也就不存在了。派生表一定要写在 FROM 后面范围内,用()括起来。后面跟着派生表的名称。
全栈程序员站长
2022/09/22
2.2K0
SQL嵌套查询_sql差集嵌套
sql的嵌套查询_嵌套查询和嵌套结果的区别
SQL连接查询和嵌套查询详解 连接查询 若一个查询同时涉及两个或两个以上的表,则称之为连接查询。连接查询是数据库中最最要的查询,
全栈程序员站长
2022/09/22
4K0
sql的嵌套查询_嵌套查询和嵌套结果的区别

相似问题

如何在ImmutableJS中存储和更新深嵌套结构

15

Python defaultdict深嵌套数据结构

11

动态更新深嵌套减速器

11

猫鼬-无法更新深嵌套对象

12

如何更新Javascript中深嵌套的对象?

317
添加站长 进交流群

领取专属 10元无门槛券

AI混元助手 在线答疑

扫码加入开发者社群
关注 腾讯云开发者公众号

洞察 腾讯核心技术

剖析业界实践案例

扫码关注腾讯云开发者公众号
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档
查看详情【社区公告】 技术创作特训营有奖征文