问题标签 [sails-postgresql]

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 投票
0 回答
121 浏览

postgresql - Sails GET 请求不会从我的 Postgres DB 中的所有列返回数据

我正在使用 $sailsS​​ocket 发出我的 GET 和 POST 请求。我的 POST 请求如下所示;

这是它保存到的表... 屏幕截图 2015-08-01 在 2 17 15 pm

一切都很好我什至在我的 ScheduleController 中添加了一个 console.log 来检查我的 POST 请求中插入了哪些内容。这是输出; 屏幕截图 2015-08-03 在 4 41 09 pm

问题是当我向Schedule表发出 GET 请求时,它会返回除repair_shop_equipment_id. 这是获取请求;

这就是回应...

屏幕截图 2015-08-04 在 1 24 25 pm

这是一个指向 Gist 的链接,其中包含我关联的 Sails 模型和调度控制器;

我的模型配置之一有问题吗?谢谢。

0 投票
1 回答
407 浏览

postgresql - 在 Heroku 上使用带有 Sails.js 的 Postgres 时出错

提前感谢您的帮助。

帆:~0.10.0

DB:使用sails-postgresql 适配器的Postgres

我已经成功地将我的 Sails 应用程序部署到 Heroku,并且能够在浏览器中连接到它。但是,我尝试使用蓝图或使用我的 api 创建任何数据,我收到以下错误

我无法在数据库中创建任何数据。当我远程连接到我的 Heroku Postgres DB 时,我还注意到没有创建任何表。我的配置中缺少什么?

0 投票
0 回答
1652 浏览

sails.js - Sails.js 蓝图路由和原生 SQL 查询的巨大性能差异

我正在为特定项目使用sails 0.10.5 版。我们使用 postgresql 作为底层数据库,大小为几 GB。最近我开始注意到一个问题。有一个postgres表,其模型定义如下:

当我使用带有 URL 的控制器的蓝图路由时:

GET /api/survey?broadcast=false&organization=2

返回结果需要 30 多秒。我在 postgres 中索引了两个列,并且还有一个使用这两个列的复合索引。此外,当我在 postgres 中运行查询时,它会以毫秒为单位返回结果。所以,我很困惑为什么通过蓝图路线需要这么长时间。

因此,我通过在控制器中覆盖它来修改路由:

然后我可以通过这种方式获得极快的性能。所以我的问题是,我是否应该在需要性能时避免使用 Waterline 的方法,或者我在模型定义或其他任何地方做错了什么?

0 投票
3 回答
512 浏览

javascript - Sails.js - Postgresql 适配器多个模式

我一直在搜索 Sails.js 多租户功能,我知道这样的功能还没有实现。我最初的想法是通过为每个租户创建一个数据库来构建多租户应用程序。

因为我意识到我还不能在 Sails.js 中做这样的事情,所以我尝试了一种不同的方法,只创建一个数据库 ( POSTGRES ),但有很多模式,每个模式都代表一个租户。我的问题是我不能/我不知道(甚至不知道这在 Sails/Postgres 适配器中是否可能)如何根据登录的用户动态地(在运行时)定义给定对象应该查询 aganist 的架构。

有没有人遇到过这样的问题?我该如何进行?

对不起英语,谢谢。

0 投票
1 回答
827 浏览

javascript - 在 Sails.js 中从 PostgreSQL 获取 BYTEA

我在处理 Sails.js 中的 PostgreSQL BYTEA 类型时遇到问题。

表定义(是的,创建二进制 PK 很奇怪,但 some_data 总是很小):

模型配置如下所示:

当我使用 node-postgres (pg) 从 node.js 查询表时,结果包含带有 some_data 的节点缓冲区,非常易于使用。

但是当我使用这样的代码从 Sails.js 查询表时:

结果看起来是这样的:

在我看来,Waterline 将 Node Buffer 转换为一些奇怪且毫无用处的东西(没有额外的转换)。我在 Waterline 文档和sails-postgresql 文档中找不到任何关于数据转换的文档。

我看到了两种处理这种情况的选择:

  1. 以某种方式阻止 Waterline 转换 Buffer 并自己进行转换。
  2. 获取 Waterline 输出并将其转换为控制器。

第二个选项似乎不太有效,因为原始数据附加了大的“父级”,并且会有两次转换 Buffer->Waterline->MyFormat 而不是简单的 Buffer->MyFormat。

0 投票
1 回答
539 浏览

sails.js - 如何通过 Sails js 使用 bigserial 作为主键 ID

我有以下模型定义:

当我生活的时候,它并没有给我关于“bigserial”数据类型的警告,即使它没有正式记录。

但是,在 Postgresql 上创建的表中,“id”列的类型为“text”。我如何拥有 bigserial 主键?

0 投票
1 回答
829 浏览

node.js - Sails 可以同时查询两个表吗?

我正在尝试使用 Sails 查询语言来查询两个表,以 Postgresql 作为数据库。

我有两张桌子“人”和“宠物”。

对于“人”,其模型为:

对于“宠物”,它的模型是:

我想查找 12 岁以下的人拥有的所有宠物,并且我想在一个查询中完成。那可能吗?

我只知道如何在两个查询中做到这一点。首先,找出所有 12 岁以下的人:

然后,找到他们拥有的所有宠物:

0 投票
1 回答
59 浏览

node.js - 如何关联两个不同sailsJs项目的模型?

我有一个sailsJs 项目,它管理不同类型用户的登录,即用户类型1、用户类型2 等。我有另一个管理这些用户提供的服务的sailsJs 项目,所以我需要将用户类型模型与他们提供的服务相关联。实现这一目标的最佳方法是什么?基本上,如果我以某种方式获得了其他项目中所有用户模型的参考,则可以实现。我阅读了有关可安装挂钩的信息,但我不确定如何使用它,并且没有很好的教程可以使用它。请指导我实现这一目标的方式。

提前致谢。

0 投票
1 回答
488 浏览

postgresql - 在 Sails.js 中处理具有数字数据类型的数据库列的最佳方法是什么?

我有一个现有的 PostgreSQL 数据库,其中包含许多具有“numeric(27,10)”或“numeric(17,2)”等数据类型的列。在我为每个表设置的 Sails 模型中,我将每个属性的类型列为整数或浮点数。但是,当 Sails 为这些表输出 JSON 时,数据将表示为字符串。

我总是可以在客户端运行类似 parseInt() 的东西,但是有没有更好的方法通过重新配置风帆来解决这个问题?

0 投票
2 回答
964 浏览

postgresql - sails.js -postgresql 为 bigint 字段返回字符串值而不是整数

我们正在使用 Sails.js 作为后端框架将项目从 PHP 迁移到 Node.js。我们不能修改我们的数据库,并且必须为这个项目使用现有的数据库。

如果我migrate: "alter"为新创建的模型保留 ,默认情况下,Sails 会将id字段保留为整数。

但是,对于我们现有的数据库,id字段大多是bigint. 所以我定义migrate: "safe"并继续创建模型。

现在我面临的问题是,当蓝图路由返回结果时,应该作为数字返回的 id 列值改为作为字符串返回。这是一个例子:

我该如何解决这个问题?

这是我的模型:

这是postgresql表定义