问题标签 [postgrex]

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 回答
1000 浏览

elixir - 将库从 Ecto 1 更​​新到 Ecto 2 后,“关闭:无法启动子项:DBConnection.Ownership.Manager”

我有一个使用 Ecto 和 Postgrex 的库(Postgrex 仅用于测试)。

从 Ecto 1 升级到 Ecto 2 后,测试套件开始出现此错误:

有任何想法吗?

0 投票
1 回答
2282 浏览

postgresql - 在插入之前获取 Postgres 中的当前 ID

我正在尝试对我插入数据库中的每本书的当前 ID 进行哈希处理,以便每本书都能被这样的“代码”识别。

Ecto 中是否有一种方法可以显示fragment("nextval('books_id_seq')")变更集或 Ecto.insert() 中的值?

到目前为止,我所能做的就是通过从此函数调用它来获取最后一个 id:

我希望有更可靠的东西,比如插入查询中的片段。

0 投票
1 回答
854 浏览

postgresql - 使用 Ecto 在 postgres 中生成_series 并将 Null 值检索为“0”

我想显示一系列日期(统计数据),例如:

原始 SQL 查询:

我很想在没有原始 SQL 的情况下将它与 Ecto 一起使用

我发现最接近的是:

但它只返回表中显示的日期,而不是整个范围(即;为当天没有类似日期的日期显示 0)

0 投票
1 回答
169 浏览

postgresql - Elixir,postgresql 错误:连接的类型无效

我收到以下问题:

我的模型架构定义如下:

测试在我的本地机器上运行正常,但每次在信号量上都会发生。我正在使用带有“postgis”图像的docker-compose,我已经尝试过使用“postgres”图像,结果相同。

非常感谢任何建议。

谢谢!

0 投票
1 回答
43 浏览

controller - 路由到从数据库中获取并以 http 响应返回结果的控制器

我想要一个从数据库表中获取所有条目并返回它们的路由。

在 router.ex 中:

在 repo.ex 中:

Api.Category.ex

我收到这些警告和错误:

看起来我正在使用categories. 我究竟做错了什么?

0 投票
1 回答
545 浏览

postgresql - 尝试实现“geo”postgrex 扩展类型时出错

我正在关注本教程config.exs,该教程在withextensions字段中添加了一个 postgrex 扩展。然而,现在添加 postgrex 扩展的方式已被弃用,我们现在应该使用type字段而不是extensions字段。我正在关注geo library github page上的代码,以添加扩展名:

配置文件

但我收到了这个错误:

我在网上看到这有时是由于postgrex 的一个版本,但这是一个非常旧的版本,我正在使用{:postgrex, "~> 0.13.2"},. 我错过了什么?

0 投票
1 回答
745 浏览

postgresql - 如何断开 Postgrex 连接?

我试图弄清楚如何连接到 postgres 数据库,运行查询,然后断开连接。

查看Postgrex,我使用

然后我使用执行我的查询

但是,我该如何断开连接?

我想断开连接,因为我正在遍历 N 个数据库并在所有数据库上运行相同的查询。

我尝试退出进程,例如Process.exit(pid, :bye),但它也终止了产卵进程,因为它是从start_link/3. 我start/3Postgrex.

0 投票
2 回答
463 浏览

elixir - 没有数据库的 Phoenix Repo 生成太多日志

我有一个 Phoenix 存储库,其他工程师在创建新应用程序时会克隆它。

我有以下内容prod.exs

工程师通常在设置数据库之前将 Phoenix 服务器部署到生产环境。工程师将在几天内建立数据库,但与此同时,我的问题是这会生成大量日志消息,我的日志系统无法处理这些消息。

这是日志消息。

我知道如何修复错误,但最终设置DATABASE_URL环境变量是工程师的责任。我只能修改工程师一开始克隆的 Phoenix 应用模板库。

有什么方法可以修改prod.exs,以便没有DATABASE_URL设置的应用程序不会生成大量日志?

0 投票
1 回答
1318 浏览

elixir - 在 Ecto 片段中使用表别名/查询表达式?

以此查询作为 Ecto 版本的基础:

我有这个代码:

这让我得到以下错误:

我确定我错过了小学,但如果我知道它是什么,我会发疯的。我尝试了许多选项,但我能够看到的所有示例都执行类似的操作fragment("json_agg(?)", p.some_field),而不是p本身。

0 投票
0 回答
296 浏览

postgresql - 无法在 Phoenix Elixir Postgres 中创建 Geo.Point 数组

我正在尝试在 phoenix elixir 的 postgres 中创建一组 Geo Point 对象。我得到错误类型_geometry无法由类型模块 Terror.PostgrexType 处理。

在 Terror.Postgrextype 中:

我已成功将相关表修改为 ->

对应的模型包含:

对长生不老药还是新手,真的可以使用一些指导!谢谢!

整个堆栈跟踪: