有计算列的Django模型

2024-09-29 07:32:00 发布

您现在位置:Python中文网/ 问答频道 /正文

如何在django模型中用默认值(在SQL中指定)来表示列?在

表格:

CREATE TABLE myTable
(
    id SERIAL,
    myGuid VARCHAR DEFAULT uuid_generate_v4(),
    anotherColumn VARCHAR
)

型号:

^{pr2}$

我使用的是python2.7.3和Django 1.4.2


Tags: django模型iddefaultsqluuidcreatemytable
1条回答
网友
1楼 · 发布于 2024-09-29 07:32:00

您可以使用python中的uuid作为uuid字段的默认值,而不是在DB级别定义它。在

import uuid
def get_uuid():
    return str(uuid.uuid4())

class myTable(models.Model):
    id = models.AutoField(primary_key=True)
    myuuid = models.CharField(max_length=40, unique=True, default=get_uuid)
    anotherColumn = models.CharField(max_length=40)

    class Meta:
        db_table = "myTable"

相关问题 更多 >