Django 模型命名约定



任何人都可以查看下面的代码段以 models.py 中创建表/类。我需要这些列名,因为我计划通过 excel 自动上传表值在外部位置。因此不想更改列名。我尝试用特殊字符在列名周围添加单引号。

您能否帮助我创建下表/类。 目前它指示语法错误。我在同一项目下为不同的应用程序提供了另一个名为 Number 的类。不确定这是否是一个问题。

from django.db import models

class Errors(models.Model):
'S/O#' = models.IntegerField(max_length=10)
Line Number = models.IntegerField()
'S/O' Type = models.CharField(max_length=5)
Error Detail = models.CharField(max_length=50)
Comments = models.TextField()
'Incident#' = models.CharField(max_length=10)
Assigned To = models.CharField(max_length=10)
Issue Status = models.CharField(max_length=15)
Action = models.CharField(max_length=20)

谢谢

由于 python 语言的限制,您将无法做到这一点。

您也许可以考虑覆盖默认生成的表和/或字段名称。

https://docs.djangoproject.com/en/2.2/ref/models/fields/#django.db.models.Field.db_column https://docs.djangoproject.com/en/2.2/ref/models/options/#table-names

所以取而代之的是:

'S/O#' = models.IntegerField(max_length=10)  # not a valid field name

尝试这样的事情:

so_number = models.IntegerField(max_length=10, db_column='S/O#) 
只需使用 "/" -> ">

_" 和 "#" -> "N"。

最新更新