问题标签 [django-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 投票
1 回答
880 浏览

python - Django DateField 到无穷大得到“溢出错误:日期值超出范围”

在我的 Django 模型中,DateField(代表过期日期)可以无限,我使用'datetime.datetime.max'的计算作为无限日期,但我得到的是

我正在使用的数据库是 postgresql。为什么会出现这个错误?有没有更好的方法呢?

0 投票
2 回答
3368 浏览

python - 格式化 Django QuerySet 以将值输出为数组

我在一个看起来像这样的表中有数据:

我正在使用以下 Django 查询查询数据以从数组中提取一些值

dataset = query_set.values_list('src_id', 'dst_id', *[e.field for e in settings])

我需要像这样输出数据:

values_list返回一个元组列表,如 (1,2,a,b,c,d)(3,4,a,c,d,e)...

所以我一直在做以下事情来将元组值重新组合成一个数组:

它工作正常,但我有 1M+ 行,而且速度很慢。它也使用了大量的内存。理想情况下,我想在 SQL 中正确格式化数据(通过 Django)并将输出直接推送到 JSON 序列化程序,而无需生成中间数组。

有没有办法优化这段代码?

我研究过使用循环或 lambda,但这并没有太大的区别。我看着使用array,但它只需要原始类型,所以数组数组没有太多运气。

我正在寻找一种方法来查询数据库并以正确的格式直接输出数据,如果可能的话在 Django 中:

我看到 Django 可以像这样进行切片数组查找

dataset = query_set.values_list('src_id', 'dst_id', 'data__3_10')

例如,要获取索引 3 和 10 之间的值,但我需要检索特定索引(例如 1、4、5、6、8、11),而不是切片。

关于如何格式化这样的查询输出的任何提示?有可能,还是对 Django 来说太深奥了?我需要rawSQL 吗?

谢谢

0 投票
1 回答
1639 浏览

django - 使用 PostgreSQL 10 的 Django?

Django 目前是否支持 PostgreSQL 10?我尝试将 pgadmin3 与 psql V10 一起使用,发现它破坏了 pdagmin3。

有人在django 项目上开了一张票,可能正在讨论中。

与 Django 的 v9.6 相比,v10 中是否有任何已知的重大变化?(因为它在 pgadmin3 中中断)?

让我知道谢谢。

0 投票
1 回答
23 浏览

django - DjangoRestFrameWork 从另一个模型中过滤一个模型

我有一个带有 ArrayField 的模型,称为“参与者”。

由于 postgress 的 ArrayField 的限制,我不能让数组成为用户列表。因此,我将用户名作为字符串存储在数组中。

现在我想序列化用户 ID 和用户名

无论如何我可以返回参与者的用户 ID 而不是字符串?因此,而不是以下结果:

我可以获得用户模型字段:

0 投票
2 回答
571 浏览

sql - PostgreSQL 和 Django 的权限被拒绝错误。授予 PostgreSQL 用户管理员权限

我有带有 PostgreSQL 的 Django 应用程序。

该应用程序具有这些环境变量:

这是 psql 输出:

当我尝试从 db 中获取一些东西时,我得到了 ProgrammingError: permission denied for relation app_rangeslot.

所以,问题:

1)如果用户管理员拥有所有权限,为什么我会收到权限被拒绝错误?

2) 如果创建了用户 admin,为什么我看不到它?

0 投票
0 回答
2754 浏览

sql - 无法将主机名“postgres”转换为地址

我在我的应用程序中使用 PostreSQL 和 Django 1.8。我有一个错误:

但我找不到设置主机名“postgres”的请求,因为我已将主机名设置为 localhost。

我可以修复那个错误吗?

0 投票
1 回答
654 浏览

django - 选择 typarray 从 pg_type WHERE typname = 'citext'

为什么我在 django 调试面板中收到此查询,这是什么意思?每当我导航到新页面时,此查询都会作为第一个运行,然后是所有其他查询,在 python shell 中使用 connection.queries 命令也是如此。我正在使用 django 1.11 和 postgres 9.6。

0 投票
1 回答
1200 浏览

django - 为什么具有 JSONFields 的不同 Django 模型具有相同的值?

我有一个带有 JSONField 的模型(仅限 Postgres 字段):

模型.py:

所以我创建了 2 个模型 - <code>./manage.py shell:

但它们具有相同的data['name']值:

请注意,数据库中的值不同

但变量m1仍然具有值Model 2

我错过了什么吗?这是我需要解决的某种行为吗?

仅供参考:使用 Django 2.0.1

0 投票
1 回答
1804 浏览

django - 通过 django 在 postgres json 中存储无穷大

我有一个如下的元组列表 -

[(float.inf, 1.0), (270, 0.9002), (0, 0.0)]

我正在寻找一个简单的序列化器/反序列化器,它可以帮助我将此元组存储在 PostgreSQL 的 jsonb 字段中。

我尝试使用JSONEncoder().encode(a_math_function)但没有帮助。

尝试将上述列表存储在 jsonb 字段中时,我遇到以下错误-

注意:字段 a_math_function 的类型为 JSONField()

0 投票
3 回答
1239 浏览

django - 使用 Django ORM 进行快速移动平均计算

我们运行 Postgres 9.6.5 和 Django 2.0。我们有一个Modelwith 字段created_atvalue. 我们需要计算某个 90 天移动平均线date_range。这就是我们这样做的方式:

这使用Avg聚合函数,因此速度相当快,但是我们需要对date_range. 对于更长的范围,这意味着很多查询。

Postgres 可以在单个查询中做到这一点。我的问题是——我们能以某种方式在使用 Django ORM 的单个查询中做到这一点吗?

(我知道我可以使用 Django ORM 执行原始 SQL,但我想尽可能避免这种情况,这就是我问的原因。)