2015-08-08 50 views
0

假设我有下表来显示如何为MySQL表声明列:(我想不出一个非常实际的例子,所以这里的东西是如此愚蠢的。这个表是用Excel的帮助)适用于MySQL数据库表的Django 1.8.2模型的字段类型

enter image description here

我想创建Django的一个模型,是与MySQL表我会和列兼容宣称这创造办法。但是,从查看Django文档中,我找不到任何模型字段类型,在SQL中除了主键字段外,其格式与图片中的格式相同。

在我之前看到的默认情况下,Django处理一个使用SQLite引擎的数据库,但我想查看是否有可能处理MySQL表的数据库。

有没有办法创建与通过MySQL创建的表兼容的Django模型字段类型,如MEDIUMINT,TINYTEXT和SMALLINT(在MySQL中)?这只是我使用我自己创建的表的一种方式,而不是一旦定义了所有模型后Django自动生成的表。

+0

Django与数据库无关。其所有核心领域都与所有数据库兼容。在你的例子中没有特定的MySQL。 –

+0

我该如何做到这一点?比如,我如何声明一个CharField,假设我在迁移应用程序时创建了一个TINYTEXT类型的列? – GregPDesJav

+0

你为什么在意?为什么这个领域必须是这种类型的?为什么不创建一个TextField? –

回答

0

在Django中,您通常会创建模型并让框架为您生成表格。如果您有传统数据库,则可以使用python manage.py inspectdb从数据库生成模型(请参阅documentation)。但是,如果它不是一个传统的数据库,并且你刚刚创建它,那么你正在与这个框架作斗争并使你的生活变得更加复杂。

+0

让我试试一次。 – GregPDesJav

+0

好吧,看来我还是无法尝试,因为我缺少的是一个名为'mysqldb'的Python模块。我想我会稍后再尝试一下。我确实遇到过我可以下载的东西,只是它的文件类型是.whl,我不确定它是什么。 – GregPDesJav

+0

安装它的简单方法是使用pip。看到这个问题:[如何使用pip安装Python MySQLdb模块?](http://stackoverflow.com/questions/25865270/how-to-install-python-mysqldb-module-using-pip)。 – Xebax