我正在尝试从Django开始。
我正在开发一款App。此应用程序称为“目录”并将存储 关于网站的信息。
我必须创建一个名为“Genders”的数据库表,但这是一个 通用数据库表,可以在其他App中使用。
我的问题......如何处理Django中的这种情况?和 我把这个数据库表放在哪个模型中?
最诚挚的问候,
答案 0 :(得分:1)
在django中,您(通常)不会创建数据库表。您创建模型,让django ORM为您创建表。
为了防止数据库中有两个名为gender的表,django将在模型名称前加上app的名称。因此,如果您的应用被称为foo
,则您的模型类为Gender
,您将拥有foo_gender
。但是,你不需要知道这一点。
至于性别的具体情况:我不打算将它存储在特殊表格的数据库中。他们不再制造新的性别了。如果您需要存储包含性别的字段,请使用django.db.models.CharField
和choices=(('M',"Male"),('F',"Female"))
。或者,如果你这么做,那么创建一个新的字段。
如果您确实需要能够动态添加到数据库中,那么要么将其抽象为可重用的应用程序,要么像其他人提到的那样,创建一个杂项/项目/工具应用程序。
答案 1 :(得分:0)
Django并没有真正为您提供整个项目中常用的东西。我认为解决这个问题的最常见方法是创建一个“项目”应用程序,它可以保存与项目相关的内容,例如模型,模板标签或小部件......