【问题标题】:How to access the columns of a table in django如何在 django 中访问表的列
【发布时间】:2018-06-26 06:39:28
【问题描述】:

我正在创建一个包含 2 个字段、输出名称和列名称的表单。输出名称存储输出表的名称。在选择输出表时,我想列出所选表中的所有列。我知道如何创建下拉依赖,我只想知道如何访问表中的列名

模型.py

class XYZ(models.Model):
  # this is the name of the table to be accessed
  Outputname = models.OnetoOneField(Output)

  column_name = # what do i do here? #

编辑: 输出表有某些列标题,我想访问它们。这就是我所说的列名。

【问题讨论】:

  • 访问列名是什么意思?
  • 输出名称存储表的名称。所以每个表都包含我想要访问的某些标题列。抱歉,如果不清楚
  • 我还不太清楚.. 你到底想在一个对象中保存什么?您想为每个 Output 对象添加列名吗?
  • 输出名称是存储在数据库中的表的名称。该表具有标题列,然后是每列下方的数据条目。我想访问这些标题。该表是完全动态的,因此无法事先知道标题。
  • 意思是要直接从数据库中获取表列名?

标签: django django-models


【解决方案1】:

好的,经过几次cmets,我终于明白你的问题了。

您不必将列名保存到您的Model。 django 使用appmodel 名称自动创建表名。 <app_name_lowercase>_<model_name_lowercase>

如果您想自定义它,只需添加class Meta,如下所示

class XYZ(models.Model):
  # this is the name of the table to be accessed
  Outputname = models.OnetoOneField(Output)

  class Meta:
      db_table = 'my_table_name'

here,您可以查看有关db_table 选项和Meta 字段的更多详细信息。 (我一般用django默认表名)

另外,只需查看 django 模型文档 (here) 即可了解 django 模型。 django ORM 非常强大,因此您不必对 sql 做太多事情。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2021-10-17
    • 2015-08-18
    • 2017-11-06
    • 2016-07-22
    • 2017-11-05
    • 1970-01-01
    • 2021-05-06
    • 2021-12-22
    相关资源
    最近更新 更多