问题标签 [django-database-functions]

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 投票
2 回答
124 浏览

django - while connecting to MicrosoftSQL server using Django facing django.db.utils.OperationalError:

File "C:\Local\Programs\Python\Python37\lib\site-packages\sql_server\pyodbc\base.py", line 314, in get_new_connectiontimeout=timeout) django.db.utils.OperationalError: ('08001', '[08001] [Microsoft][ODBC SQL Server Driver]Neither DSNnor SERVER keyword supplied (0) (SQLDriverConnect); [08001] [Microsoft][ODBC SQL Server Driver]Invalid connection string attribute (0)')

0 投票
2 回答
70 浏览

python - Django annotate + SUM 如何获取所有条目

我的模型

我有 3 台机器,我想获得过去 7 天每台机器的总销售额。

我的查询是

这给出了以下结果,

我想要得到的是

我想用 Coalesce 来做,但我弄错了。

*我使用mysql作为数据库。一个数据库特定的查询也很好。

0 投票
1 回答
208 浏览

python - Django DB 迁移添加新列,但不要编辑表中已有的值

我有一个用于创建表并指定应添加到其中的值的 python 脚本。我使用以下两个命令进行迁移。

这就是发生的事情:

  1. 当我最初使用上述命令时(当没有表时),所有表都是用正确的值创建的。
  2. 在进行第一次迁移(创建表并添加值)后,如果我在脚本中向表中添加新列,然后运行上述命令,则新列已成功添加到表中。
  3. 但是,在进行第一次迁移(创建表并添加值)之后,如果我更改要添加到表中的值(在脚本中),然后运行上述命令,我会得到输出“未检测到更改”。而且这些值也没有更新。

我怎样才能实现上面提到的第三步。我是 Django 的新手,所以请帮帮我。

0 投票
1 回答
30 浏览

django-models - Filtering down through multiple ForeignKey relations in django

I am trying to get down through multiple-foreign key relationship where each Hotel has many Rooms, each Room has many Rateplans, each Rateplan has many Prices.

It resembles Christmas tree if you think about it:

Hotel
v
Room
v
Rateplan
v
Prices

How can I execute query that will return hotels in certain hotel_city on certain price_date, certain price_price and certain price_availability? (just like Expedia or booking.com query)

For example:

I have looked into django complex queries documentation and annotate/aggregate but couldn't wrap my head around it.

My models below:

0 投票
0 回答
25 浏览

django - Django - 从数据库中手动删除应用程序

所以我正在处理一个 Django 项目,在该项目中,我对项目的一个应用程序的数据模型进行了一些重要的重构。我目前正在开发本地开发人员版本,到目前为止,迁移这些更改的最简单方法是删除并重新制作数据库(因为与现有迁移发生冲突)。

我显然不能对生产数据库执行此操作,但原始模型已经迁移到那里。由于我无法删除整个数据库,我想进入并手动删除与此应用程序相关的所有表和迁移,然后运行新的初始迁移。此应用程序尚未在生产中使用,即使数据是从另一个服务同步的,所以它是可恢复的。

我已经深入研究了 Django 进行迁移的方式,所以我知道 Django 使用的一些表与我的模型没有直接关系。我的问题是,除了删除模型表(即 appname_modelname)并从 django_migrations 表中清除相关行之外,我是否需要进行任何更改才能使其正常工作?

我知道这是做我想做的事的一种笨拙的方式,但实际上让迁移运行以进行我的重构将是一个巨大的麻烦,这种解决方法应该是有效的。

0 投票
0 回答
34 浏览

django - 如何通过 - 窗口函数过滤带注释的查询集 - 而不更改带注释字段的值

我有一个用户查询集,在使用 Django Window 函数注释每个用户的排名后,我想在不修改排名值的情况下查询用户

这很好用,但是在users_points_query查询过滤时,会再次计算排名,因此第一个用户将获得 1 的排名,这是基于第一行的,依此类推。

0 投票
1 回答
22 浏览

django - 在Django中过滤具有多个相关对象的对象

假设我有两个具有一对多关系的模型,如下面的代码所示。我只想获取具有多个装运对象的订单对象。

我能想到的唯一方法是通过列表理解来获得它,[order for order in Order.objects.all() if order.shipments.count() > 1]但它似乎效率太低。

有没有更好的方法在 Django 中执行此查询?