django会创建一个干净的数据库吗?

时间:2011-05-11 14:52:40

标签: django database-design maintainability

我正在为学校的数据库构建一个Web界面。该数据库将保留我们学校的学术标准版本。

使用django构建网站时,是否会创建一个干净的数据库?例如,像Dreamweaver这样的所见即所网站构建者在后端创建丑陋的html和css代码。我不想在我的数据库中看到类似程度的自动生成错误。

我应该自己创建数据库,然后构建一个django站点来访问数据库,还是继续让django创建数据库?

3 个答案:

答案 0 :(得分:1)

在任何简单到中等复杂的应用程序中,Django都能很好地为您创建数据库。我还没有遇到任何问题。

我建议您使用South来处理表格迁移。并使用virtualenvpip来设置和维护您的Django环境。

答案 1 :(得分:0)

您可以使用sqlall的{​​{1}}谓词来查看为了生成数据库而执行的确切SQL。

答案 2 :(得分:0)

显然django needs database tables的基本功能(contrib.apps)。

当然,您不必使用它们,但通常您希望使用最少的contrib.auth和其他一些捆绑的应用程序:

  

这些应用程序中的每一个都可以使用   至少一个数据库表,   但是,我们需要创建   我们可以在数据库中的表   使用它们。

我无论如何你不能也不应该将它与Dreamweaver或word生成的丑陋html代码进行比较。


更抽象的层面:

Web框架的一个关键概念(遵循mvc模式)是您定义由框架“转换”(映射)到数据库表中的模型。

  

模型是唯一的,确定的   有关您数据的数据来源。它   包含必要的领域和   您正在存储的数据的行为。   通常,每个模型映射到一个   数据库表。

如果您想手动创建整个数据库方案,那么您完全错过了使用Web框架的重点。在大多数情况下,您根本不需要手动编写sql。您可以定义类,然后使用内置orm来查询对象。