在django中动态地向表中添加字段

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了在django中动态地向表中添加字段相关的知识,希望对你有一定的参考价值。

在阅读了数据库设计之后,我决定为所有用户使用单个表。

  • 我的问题是如何为新用户创建字段以将其数据添加到其中?
  • 还有什么是检索特定于每个用户的数据的好方法?

我很欣赏有关这个主题的任何建议。

答案

既然您正在使用Django,我建议您阅读Django文档和/或他们的入门教程 - 他们很容易在他们的网站上关注指南。他们的指南的第2部分可能是你正在寻找的(https://docs.djangoproject.com/en/2.0/intro/tutorial02/),但我会从第1部分(https://docs.djangoproject.com/en/2.0/intro/tutorial01/)开始阅读 - 它们不是很冗长。

Django提供类似于其他ORM框架的ORM功能。因此,为了自动生成表,您需要首先在Django文件中定义直接映射到mysql数据库中的表的所谓“模型”。在您的情况下,您将定义一个名为“users”的模型。

定义模型后,可以使用python CLI“makemigrations”命令自动为用户模型生成相关的迁移文件。迁移是帮助Django在数据库中创建关联表的中间文件。

至于从数据库中检索数据(特定于每个用户),您必须在Django中编写一组端点,这些端点将自动在您的数据库上运行相应的SQL命令并返回找到的数据。例如,您可能有一个名为getAllUsers的端点将映射到python(Django)函数,该函数将从users表中检索所有用户数据并将其返回。

Django文档解释了如何对数据库进行查询。看看这个页面:https://docs.djangoproject.com/en/2.0/topics/db/queries/

希望这可以帮助你!

以上是关于在django中动态地向表中添加字段的主要内容,如果未能解决你的问题,请参考以下文章

django - 动态添加 django 表单字段并保留用户输入

解决向表中添加中文数据报错的问题

Django - 添加字段以动态形成

使用 JavaScript 向表中添加新行时重置输入字段

Symfony2,Sonata MediaBundle:向表中添加新字段

数据库动态添加字段