问题标签 [ecto]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
392 浏览

elixir - Ecto 模型序列化

Ecto.Entity是否有一种方法Ecto.Model可以返回Dict模型中定义的字段及其值?

0 投票
1 回答
2240 浏览

json - 从 elixir ecto 关联创建 json

我想从 phoenix 中的 ecto 关联生成 JSON。

这是我的协会:

和:

当我在没有关联的情况下生成 json 时,结果是这样的:

json看起来像这样

但与协会的结果是这样的

使用上述输出,我无法创建正确的 json 输出。我希望 json 看起来像这样

任何帮助,将不胜感激。

0 投票
1 回答
368 浏览

elixir - Elixir Ecto/Postgrex 在 Repository.insert 上输出奇怪的调试消息

(代码在 Github 上https://github.com/fabianhjr/AseguradoraElixir/tree/fcfeacbee1ec9bc9f59bb01e65743983ae0986d3

尝试将 Ecto/Postgrex 与某些模型一起使用时,我在存储库插入时得到了意外的输出。(lib/main.ex:63)

收到以下错误

我使用 pgAdmin 连接到数据库,手动完成了模式,因为 mix ecto.gen.migration / mix ecto.migrate 似乎被破坏了。(我从 elixir 开始,所以我可能做错了什么,有人指出我在 mix.exs 中检查我的入口点,我认为它们很好)我尝试使用 IO.inspect,但它仍然很丑陋且不可读。(存储库.get [Model] [id] 不会崩溃,只是返回 nil)

任何指向正确方向的指针将不胜感激。


感谢 Jose更新更好的错误消息

0 投票
1 回答
288 浏览

elixir - 编译 Ecto 时混合编译失败

在 Elixir 中:
尝试编译 Ecto 的依赖项时,我在 Mix 和 poolboy 中遇到以下错误:

**(混合)应用程序 poolboy 指定了非语义版本`cat VERSION`。Mix 只能匹配要求~> 1.2.1 对语义版本,要匹配任何版本,请使用正则表达式作为要求

我在 Windows 8.1 上

这是我的混合部门:
注意:我必须对 postgrex 使用“~> 0.6.0”,否则它会抱怨依赖解析。(在 Ecto 文档中,它只是说使用 ">= 0.0.0")

从编译错误消息来看,似乎是 mix 没有正确处理某些东西,或者 poolboy 没有并且可能不在 Ecto 方面?

无论如何,有人知道如何解决这个问题或有解决方法吗?谢谢。

0 投票
2 回答
999 浏览

elixir - Query Repo Using a String

I am using Phoenix with Ecto to query a database for a single record by the primary key. All of the documentation/examples show the usage as in a Phoenix Controller:

However, all params in Phoenix are strings, so this throws a ** (Ecto.InvalidModel) model App.MyModel failed validation when , field id had type string but type integer was expected. I have been working around this in my controllers by doing something like:

The problem is I haven't seen anyone else doing this sort of type conversion. I'm worried I don't have Phoenix or Ecto set up correctly. Is there a Phoenix/Ecto convention I am missing that would automatically coerce my id argument for Repo.get/2 to an int?

0 投票
1 回答
3739 浏览

elixir - 修复协议 Ecto.Queryable 未实现错误

我是使用 Ecto 和 Elixir 的新手,遇到了一个我无法解释的错误。我的代码看起来就像 Ecto README 中的示例。

这是我的 Ecto 模型和查询模块

这是我如何调用查询函数

这一切似乎与 Ecto 文档完全一致,我找不到任何其他说法。但我收到以下错误。

0 投票
1 回答
483 浏览

elixir - 如何在 Ecto 模型(或 Elixir 结构)上实现 setter

我来自 Rails 思维模式,习惯于向 ActiveRecord 模型添加大量设置器以修剪/小写字符串(例如电子邮件地址)或规范电话号码以使用“-”作为分隔符。我喜欢 setter 方法,因为它保留了修改记录 DRY 的代码。Elixir/Ecto 可以做到这一点吗?

0 投票
8 回答
26084 浏览

elixir - 如何将原始 sql 与 ecto Repo 一起使用

我有一个 upsert 要求,所以我需要调用 postgres 存储过程或使用公用表表达式。我还使用 pgcrypto 扩展名作为密码,并希望使用 postgres 函数(例如“crypt”来编码/解码密码)。

但是我找不到让 Ecto 部分或全部使用原始 sql 的方法,是否打算让 ecto 仅支持 elixir dsl 而不允许在 dsl 不够时使用原始 sql?

我发现我可以通过适配器查询(火箭是应用程序的名称)

但不确定如何将其应用于模型。我是 elixir 的新手,看来我应该能够使用 Ecto.Model.Schem。架构/3 但这失败了

0 投票
1 回答
1433 浏览

elixir - 如何将 uuid 与 Ecto 模型一起使用

我正在尝试将 uuid 与 ecto 一起使用。我可以查询所有内容,但是unable to encode valueRepo.get 出现错误。

使用所有的作品,但 uuid 在控制台和 json 解码中都没有表示为字符串:

0 投票
1 回答
1902 浏览

elixir - 如何键入转换解码JSON,就好像它来自数据库一样

从数据库加载日期/时间类型时,Ecto 将转换为 Ecto.DateTime 类型。从 JSON 字符串加载模型时如何应用相同的类型转换