首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
社区首页 >问答首页 >如何为嵌套资源w/ Ecto/菲尼克斯创建变更集

如何为嵌套资源w/ Ecto/菲尼克斯创建变更集
EN

Stack Overflow用户
提问于 2016-05-18 12:41:13
回答 1查看 1.2K关注 0票数 2

我在我的凤凰应用程序中有一个嵌套的资源,我正在为它创建一个变更集。问题是,Ecto.build_assoc希望映射有原子键,但是我的params有字符串键。为嵌套资源创建变更集的正确方法是什么?

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
def create(conn, %{"component" => component_params}, generator) do
  changeset = Ecto.build_assoc(generator, :components, component_params) # attributes don't get set
  ...
end
EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2016-05-19 08:32:10

如果按惯例编写,调用changeset函数将处理您要使用Ecto.Changeset.Cast/4进行的转换。

菲尼克斯/Ecto故意不信任原始用户的输入。变化是处理这一问题的“经济方式”。

下面是一种更常规的方法来处理控制器中要执行的操作:

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
def create(conn, %{"component" => component_params}, generator) do
  changeset =
    generator
    |> Ecto.build_assoc(:components)
    |> Component.changeset(component_params)
  ...
end

考虑到您在component.ex中有类似的东西

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
def changeset(model, params \\ :empty) do
  model
  |> cast(params, @required_fields, @optional_fields)
end
票数 3
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/37309743

复制
相关文章
SQL嵌套查询_sql差集嵌套
派生表就是一个由查询结果生成的临时表。他是在外部查询的 FROM 中定义的。派生表的存在范围只是在外部查询中,只要外部查询结束了,派生表也就不存在了。派生表一定要写在 FROM 后面范围内,用()括起来。后面跟着派生表的名称。
全栈程序员站长
2022/09/22
2.2K0
SQL嵌套查询_sql差集嵌套
23_同时创建父子资源 & 创建资源集合
http://mpvideo.qpic.cn/0bf2qyassaab3eapjq6lqzpvdbwdfgdackia.f10002.mp4?dis_k=3a1d6e9ce931af6abc284df
宿春磊Charles
2022/03/29
3570
如何为Joomla标签创建布局覆盖
这将在/templates/your-template/html/layouts/joomla/content/文件夹中生成一组文件。
用户3850506
2019/07/30
1.5K0
kubewatch监控k8s集群资源变更
这次要介绍一个 Kubernetes 资源观测工具,实时监控 Kubernetes 集群中各种资源的新建、更新和删除,并实时通知到各种协作软件/聊天软件,目前支持的通知渠道有:
聂伟星
2020/11/04
1.7K0
Spark读取变更Hudi数据集Schema实现分析
Hudi支持上层Hive/Presto/Spark查询引擎,其中使用Spark读取Hudi数据集方法非常简单,在spark-shell或应用代码中,通过 spark.sqlContext.read.format("org.apache.hudi").load便可加载Hudi数据集,本篇文章分析具体的实现。
ApacheHudi
2021/04/13
2.7K0
如何为Tensorflow构建自定义数据集
Tensorflow激发开发人员在几乎任何想到的领域中尝试他们令人兴奋的AI创意。ML社区中有三个众所周知的因素构成了一个好的深度神经网络模型做了一些神奇的事情。
代码医生工作室
2019/06/21
1.9K0
如何为Tensorflow构建自定义数据集
如何在Ubuntu上部署Elixir-Phoenix MySQL应用程序
在本教程中,您将使用Phoenix-Ecto和Mariaex配置现有的Phoenix应用程序连接到MySQL数据库。Ecto是Phoenix应用程序广泛使用的数据库包装器。Mariaex是一个数据库驱动程序,它与Ecto集成并与MySQL和MariaDB数据库进行数据传输。
挺问中原
2018/08/13
6.1K0
创建资源池租户
Java版云管平台项目中创建资源池租户,南向接口需要对底层的Kubernetes创建namespace的同时创建同名Kubernetes用户。
后端云
2021/10/09
7100
如何为Nginx创建自签名SSL证书
SSL(Secure Sockets Layer 安全套接层),及其继任者传输层安全(Transport Layer Security,TLS)是为网络通信提供安全及数据完整性的一种安全协议。 TLS与SSL在传输层对网络连接进行加密。
尘埃
2018/07/20
11.9K0
创建一个变更管理流程-部分1
让我来猜想一下,你的收件箱一定已经塞满了用户要求你更改Salesforce功能的请求。你的桌子上也可能同样布满了相同内容的便签。更有可能的是,你的笔记本里也同样写满了用户各种各样的请求。
臭豆腐
2019/04/16
8360
创建一个变更管理流程-部分1
Elixir, OTP, Ecto, 和 Phoenix 免费教程!
今天,DailyDrip发布了五周的免费内容,向人们介绍Elixir编程语言,并准备使用Ecto和Phoenix构建Web应用程序。我们制作了25个短片(每个约5分钟),这将使你从“Elixir是什么
时见疏星
2018/06/01
1.8K0
WPF 使用 Behavior 库辅助获取动态资源变更事件
在 WPF 开发中,可以使用 Behavior 库辅助,监听某个动态资源变更的事件,从而了解到是在哪个模块变更了动态资源,或者根据动态资源的变更而进行界面修改
林德熙
2021/04/14
7020
数据集 | 人力资源分析案例研究数据集
下载数据集请登录爱数科(www.idatascience.cn) 这是人力资源数据集,每年约有5%员工得到晋升,检查员工是否得到晋升。 1. 字段描述 2. 数据预览 3. 字段诊断信息 4. 数据来源 来源于Kaggle。
数据科学人工智能
2022/03/30
7570
数据集 | 人力资源分析案例研究数据集
Kubernetes资源创建流程解析
我们知道在Kubernetes集群中apiserver是整个集群的控制入口,etcd在集群中充当数据库的作用,只有apiserver才可以直接去操作etcd集群,而我们的apiserver无论是对内还是对外都提供了统一的REST API服务,包括一个8080端口的非安全服务和6443端口的安全服务。组件之间当然也是通过apiserver进行通信的,其中kube-controller-manager、kube-scheduler、kubelet是通过apiserver watch API来监控我们的资源变化,并且对资源的相关状态更新操作也都是通过apiserver进行的,所以说白了组件之间的通信就是通过apiserver REST API和apiserver watch API进行的
mikelLam
2022/10/31
6410
Kubernetes资源创建流程解析
何为真何为假
还记得第一个提出日心说的人是谁么? 没错, 哥白尼. 但是在那个年代, 所有人都认为太阳围绕着地球转的年代. 哥白尼的发现打破了大家的常识, 甚至于有过了很多年, 日心说才逐渐被大众所接受. 即使到了
烟草的香味
2020/06/09
9710
R In Action|创建数据集
1)向量(vector):用于存储数值型、字符型或逻辑型数据的一维数组。函数c()用来创建向量:
生信补给站
2020/08/06
1.6K0
如何为程序包创建自己的存储库?
对于Linux,分发软件的最常见方法是rpm或deb格式的二进制软件包。大多数软件包都包含在官方发行版本存储库或第三方软件存储库中。但是,在某些情况下,您只需要安装几个独立的软件包即可。您也许可以使用本地软件包安装工具,即dpkg或rpm,但是在某些情况下,由于依赖关系项而无法安装软件包,因此您需要手动安装所有依赖项。这可能需要一些时间,而且不太容易。但是有一个解决方案可以提供帮助,您可以创建自己的本地存储库,然后将软件包部署到该本地存储库。
用户6543014
2020/01/16
2K0
11.4.6 集合嵌套查询与嵌套结果(结果集) -《SSM深入解析与项目实战》
项目中所有的源码都可以在此链接的仓库中找到:https://github.com/chenhaoxiang/uifuture-ssm
谙忆
2021/10/26
4810
何为http,何为RPC?
RPC(即Remote Procedure Call,远程过程调用)和HTTP(HyperText Transfer Protocol,超文本传输协议)他们最本质的区别,就是RPC主要工作在TCP协议之上,而HTTP服务主要是工作在HTTP协议之上,我们都知道HTTP协议是在传输层协议TCP之上的,所以效率来看的话,RPC当然是要更胜一筹。
Java架构
2019/06/15
1.4K0
点击加载更多

相似问题

在菲尼克斯中处理嵌套表单/ ecto变更集的正确方法是什么?

23

Ecto变更集-跳过空字段

20

ecto变更集为现有添加关联

20

belongs_to关联的Ecto变更集

10

在变更集期间允许虚拟关联的Ecto变更集不起作用

11
添加站长 进交流群

领取专属 10元无门槛券

AI混元助手 在线答疑

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

洞察 腾讯核心技术

剖析业界实践案例

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