Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/django/21.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Django syncdb不';调用inspectdb后无法工作_Django_Django Models_Django Syncdb - Fatal编程技术网

Django syncdb不';调用inspectdb后无法工作

Django syncdb不';调用inspectdb后无法工作,django,django-models,django-syncdb,Django,Django Models,Django Syncdb,我使用inspectdb从现有PostgreSql数据库创建了一个模型,当我尝试执行syncdb时,为了生成授权表,它会生成以下错误: CommandError: One or more models did not validate: db.t1: "ip": CharFields require a "max_length" attribute that is a positive integer. 因此,我将max_length=255放在所有字符字段中,但它对这两个字段都不起作用。Dj

我使用inspectdb从现有PostgreSql数据库创建了一个模型,当我尝试执行syncdb时,为了生成授权表,它会生成以下错误:

CommandError: One or more models did not validate:
db.t1: "ip": CharFields require a "max_length" attribute that is a positive integer.
因此,我将
max_length=255
放在所有字符字段中,但它对这两个字段都不起作用。Django版本是1.5.1。
有人知道如何解决这个问题吗?

目前
inspectdb
没有为没有指定长度的PostgreSQL字符字段设置
max\u length
。仅供参考,引用postgreSQL文档:

符号varchar(n)和char(n)是字符的别名 分别变化(n)和字符(n)。无长度字符 说明符等同于字符(1)。如果使用字符变化 如果没有长度说明符,则类型接受任何大小的字符串。这个 后者是一个PostgreSQL扩展

但是,Django需要定义没有
max_length
参数的字符域。这是一个很好的例子

此django提供了一个无长度限制的自定义
CharField
——应通过django的所有验证

此外,切换到
TextField
也会有所帮助


希望能有所帮助。

我将导出的models.py复制到了错误的文件夹,花了大约2个小时才实现。不过,谢谢你的帮助:)当然,当你需要另一个有趣的童话时问问:)