问题标签 [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.
django - DjangoORM:在自定义 DB 函数中解析 F 表达式
我正在尝试在 Django 中编写一个自定义 PostgreSQL 函数,它将强制日期时间到查询集中的指定时区。我第一次通过 db 函数看起来像这样:
此函数适用于我将时区字符串直接传递给函数的简单情况,如下所示:
但是,它在更复杂的情况下不起作用,其中时区是在模型的某个字段上定义的。考虑以下人为设计的示例:
要回答“今天当地时间下午 12 点会有哪些用户参加会议?”这个问题,我需要这个查询集的一些变体:
然而,正如目前所写的那样,DateTimeInTimezone
将简单地将字符串F('time_zone')
注入 sql 而不是解析字段。
是否可以向此函数添加对F 表达式的支持?我应该考虑其他一些方法吗?
django - postgresql 错误:未定义的符号:django 中的 GEOSClipByRect
当我在 django 中迁移时,django
在下面有返回错误
django.db.utils.InternalError:无法加载库“/usr/lib/postgresql/9.6/lib/postgis-2.3.so”:/usr/lib/liblwgeom-2.3.so.0:未定义符号:GEOSClipByRect
我研究了很多帖子,但没有找到任何解决方案。
有谁知道解决方案?
我的系统信息如下
发行商 ID:Ubuntu
描述:Ubuntu 16.04.2 LTS
版本:16.04
代号:xenial
ii postgresql-9.6 9.6.2-1.pgdg16.04+1 amd64 对象关系 SQL 数据库,版本 9.6 服务器
ii postgresql-9.6-pgrouting 2.3.2+ds-2.pgdg16.04+1 amd64 PostgreSQL 路由功能支持/PostGIS
ii postgresql-9.6-pgrouting-scripts 2.3.2+ds-2.pgdg16.04+1 PostgreSQL/PostGIS 的所有路由功能支持 - 脚本
ii postgresql-9.6-postgis-2.3 2.3.2+dfsg-1~exp2 .pgdg16.04+1 amd64 Geographic objects support for PostgreSQL 9.6
ii postgresql-9.6-postgis-2.3-scripts 2.3.2+dfsg-1~exp2.pgdg16.04+1 all Geographic objects support for PostgreSQL 9.6 -- 脚本
ii postgresql-client-9.6 9.6.2-1.pgdg16.04+1 PostgreSQL 9.6 的 amd64 前端程序
ii postgresql-client-common 180.pgdg16.04+1 多个 PostgreSQL 客户端版本的所有管理器
ii postgresql-common 180 .pgdg16.04+1 所有 PostgreSQL 数据库集群管理器
ii postgresql-contrib 9.6+180.pgdg16.04+1 所有 PostgreSQL 附加设施(支持的版本)
ii postgresql-contrib-9.6 9.6.2-1.pgdg16.04+ 1 用于 PostgreSQL 的 amd64 附加设施
ii postgis 2.3.2+dfsg-1~exp2.pgdg16.04+1 amd64 Geographic objects support for PostgreSQL
ii postgis-doc 2.3.2+dfsg-1~exp2.pgdg16.04+1 all Geographic objects support for PostgreSQL --文档
ii postgresql-9.6-postgis-2.3 2.3.2+dfsg-1~exp2.pgdg16.04+1 amd64 PostgreSQL 9.6 的地理对象支持
ii postgresql-9.6-postgis-2.3-scripts 2.3.2+dfsg-1~exp2 .pgdg16.04+1 所有 Geographic 对象支持 PostgreSQL 9.6 -- 脚本
python - 如何在 django 中进行不区分重音的 TrigramSimilarity 搜索?
如何将不区分重音的搜索添加到django 文档中的以下片段:
这怎么可能匹配test = 'Kâtié Stéphèns'
?
django - ArrayField 存储自定义字段值
我想使用一个数组字段来存储代表特定自定义类的 json 字符串列表。我所做的是:
但:
引发以下错误
完整的追溯是:
关于我可能做错了什么的任何想法?谢谢
postgresql - 如何指定要迁移到架构的应用程序 django
我最近对 MySQL 上的旧数据库进行了检查。我们想迁移到 postgre。现在我们希望检查迁移到不同的模式是否有迁移命令来实现这一点?所以不同的应用程序应该在同一个数据库中使用不同的模式
django - 我应该使用 ArrayField 还是 ManyToManyField 作为标签
我正在尝试在 django 中为 postgres db 的模型添加标签,我找到了两个解决方案:
使用外键:
使用数组字段:
假设我不关心在我的代码中支持其他数据库后端,推荐的解决方案是什么?
python - Django PostgreSQL IntegerRangeField 和 update_or_create
我有一个非常简单的模型:
但是,当我通过update_or_create
方法操纵我的模型时,我遇到了一种非常奇怪的行为。出于某种原因,我的IntegerRange
领域刚刚被抹去。
这对我来说不是一种理想的行为。这是一个错误吗?请指教。
版本:
- 姜戈 1.11
- PostgreSQL 9.6.3
python - Django 管理模型 ArrayField 更改分隔符
我的模型如下所示:
这允许我输入默认情况下用逗号分隔的解决方案列表。例如:我可以在该文本字段中输入:
这确实创建了一个包含两个单独字符串项的列表。但是,如果解决方案文本本身包含逗号,例如:
由于该句子中存在逗号,这将创建两个单独的解决方案行。
我如何告诉 django 使用与逗号不同的分隔符,因为它几乎肯定是句子的一部分。如何使用像“|”这样的分隔符?我查看了 arrayfield 类,但它不允许任何分隔符。
django - 如何在日期时间字段上过滤 gte、lte 日期?
我试图弄清楚如何使用从日期时间中提取的日期来过滤 QuerySet。
我使用Django-filter
并且如果不迭代非常无效的 QuerySet 就无法编写这样的查找。
我试过datetime__date__gte
哪个不起作用。
你知道该怎么做吗?
我不能使用datetime__lte/gte
,因为:
我有一个Reservation
对象 r。
所以现在我尝试根据日期进行过滤:
这是因为它不仅看起来像日期,而且看起来也很准时。所以我需要提取日期才能正确过滤。
json - 调整 JSONField 以自动转换为十进制
我有类型字段的模型:
我希望它总是通过以下方式反序列化:
通过以下方式访问对象时:
但是我发现很难自定义,因为json.loads
必须被上面的行覆盖的行在
在内部方法中def _create_json_typecasters
。
所以我希望必须更改我的模型字段类型,或者可能有一种更简单的方法来告诉 Django 如何准备我的模型?