相关疑难解决方法(0)

PostgreSQL中的文本压缩

我知道在SQL中我们可以压缩文本字段,如下所示:

CREATE TABLE TableName (FieldName CHARACTER(255) WITH COMPRESSION);
Run Code Online (Sandbox Code Playgroud)

我想知道如何在Postgres中实现文本压缩.

postgresql

27
推荐指数
1
解决办法
2万
查看次数

在Django模型字段中存储二进制哈希值

我有一个20字节的十六进制哈希,我想存储在django模型中.如果我使用文本字段,它将被解释为unicode并且它会返回乱码.

目前我正在编码并对其进行解码,这真的使代码混乱,因为我必须能够通过它进行过滤.

def get_changeset(self):
    return bin(self._changeset)

def set_changeset(self, value):
    self._changeset = hex(value)

changeset = property(get_changeset, set_changeset)
Run Code Online (Sandbox Code Playgroud)

这是一个过滤的例子

Change.objects.get(_changeset=hex(ctx.node()))
Run Code Online (Sandbox Code Playgroud)

这是django开发人员推荐的方法,但我真的很难接受这样一个事实,就是存储20个字节就是这个丑陋的事实.

也许我太过纯粹主义者了,但理想情况下我能够写作

Change.objects.get(changeset=ctx.node())
Run Code Online (Sandbox Code Playgroud)

这些属性允许我写:

change.changeset = ctx.node()
Run Code Online (Sandbox Code Playgroud)

这就像我可以问的那样好.

python django encoding django-models binary-data

8
推荐指数
1
解决办法
7179
查看次数