使用postgres在django范围字段中将Infinity设置为默认值

时间:2016-04-06 05:18:44

标签: python django postgresql

Django现在支持官方postgres范围字段。如何在其中一个中指定Infinity作为默认上限。

  1. 理想的是使用(default = Inf)或类似的东西作为模型中字段定义的参数。
  2. 如果没有,至少在保存时重写model.clean。
  3. 假设一个非常高的值并将其用作默认值并不是一个好的解决方案。这个假设可能随时都会破裂。

1 个答案:

答案 0 :(得分:5)

我不确定为什么你需要将Infinity设置为上限。如果将上限设置为None,则将其视为未绑定的值,即根本没有限制。

Django Range Fields使用psycopg2 Range objects及其文档:

  

<强>参数:

     

lower - 范围的下限。 None表示未绑定

     

upper - 范围的上限。 None表示未绑定