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

Mysql 在django中向表中动态添加字段,mysql,django,database,database-design,django-models,Mysql,Django,Database,Database Design,Django Models,在阅读了数据库设计之后,我决定为所有用户使用一个表 我的问题是如何为新用户创建字段以将其数据添加到其中 另外,检索特定于每个用户的数据的好方法是什么 我非常感谢您对这个主题的任何建议。因为您使用的是Django,我建议您阅读Django文档和/或他们的入门教程-他们的网站上有非常容易阅读的指南。他们指南的第2部分可能是您想要的(),但我将从第1部分()开始阅读-它们不是很长 Django提供了与其他ORM框架类似的ORM功能因此,为了自动生成表,首先需要在Django文件中定义所谓的“模型”

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

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

我非常感谢您对这个主题的任何建议。

因为您使用的是Django,我建议您阅读Django文档和/或他们的入门教程-他们的网站上有非常容易阅读的指南。他们指南的第2部分可能是您想要的(),但我将从第1部分()开始阅读-它们不是很长

Django提供了与其他ORM框架类似的ORM功能因此,为了自动生成表,首先需要在Django文件中定义所谓的“模型”,这些模型直接映射到MySQL数据库中的表。在您的例子中,您将定义一个名为“用户”的模型

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

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

Django文档解释了如何对数据库进行查询。查看此页面:


希望这对你有帮助

感谢您的解释,我忘了提到我已经有了一个数据库,并且按照您所说的方式获取表没有问题,我正在寻找的是重新构造我的数据库,以便将所有用户添加到一个表中,因此必须动态添加他们。我正在寻找一种方法,可以将一个表中每个特定于用户的数据与其他用户分开,这样我就可以通过查询获得用户数据。嗯,我不确定我是否理解您描述的问题。如果您有一个users表,那么该表中将有多个列。例如,您可能有“firstname”、“lastname”、“username”、“password”、“dateofbirth”等。每次向该表添加新用户时,您都会提供该用户的名字、姓氏、用户名、密码和出生日期。这样,在表中,存在的每个用户都有一行(每行都包含这五条信息)。这是您当前的设置吗?如果是这样的话,你能说明你想要实现什么吗?当然,目前我有一个模型,每个用户有40个字段,所以如果我有100个用户,我就有100个模型。我想做的是只将所有用户添加到一个表中。现在,通过这种方式,我可以动态地(当服务器运行时)将字段(用户)添加到该表中。另外,如果我想使用一个表中的查询来获取用户数据,我如何知道哪些字段属于哪个用户。不过,这种方法已经被各行业采用。