4

我正在评估概念证明应用程序的框架。此应用程序将有大约 30 天的生命周期,之后它将被遗忘或完全重写。我已经确定我想从现有的数据库模式中自动生成一个示例应用程序,然后只调整视觉设计的某些方面。我看过一个在Ruby on Rails上完成的演示:它为数据库中的每个表自动生成一个简单的视图和数据输入表单,内置分页等。我也已经确定我需要使用Python,而不是 Ruby,用于这个项目。

所以我想到了这个问题:

在 Rails 上运行 Python?

那里的答案将我引向 Django

所以这个问题。如何使用 Django 从数据库模式自动生成一个简单的 CRUD 应用程序,类似于在 RoR 上可以完成的操作?

到目前为止我已经尝试过:

4

2 回答 2

3

使用 Django 的inspectdb生成模型,然后使用 Django Admin 输入/管理数据。

您将首先创建一个 Django 项目并运行 inspectdb 来创建模型。然后,您将在项目中创建一个应用程序,并移动您创建的模型文件以替换应用程序中的默认 models.py 文件。确保已启用Django 管理员。然后,在应用程序中,您可以将模型添加到默认的 admin.py文件中以包含在管理员中。admin.site.register(ModelName)您可以通过在 admin.py 中包含要输入数据的每个模型来快速查看管理员。要定制模型的呈现方式,您只需创建一个class YourModelAdmin(admin.ModelAdmin)并定义您希望特定模型的显示方式。

设置一个基本的管理站点实际上非常快,也是 Django 的强项之一。

于 2018-09-19T18:07:59.580 回答
0

正如 Dan 指出的那样,我们可以使用inspectdb生成模型文件,一旦我们有了models.py文件,我们就可以将其集成到admin.py手册中,或者可以通过添加所有文件来完成;我们需要更新urls.py以包含管理员生成的视图。

除非我们有一些自定义视图,否则这不会很有用,您可以在模型中添加数据并在管理面板中查看它们。管理视图也支持分页。管理视图中还有更多功能,就像带有添加方法和字段的传统 python 类。

于 2018-09-19T18:19:39.157 回答