【问题标题】:Django CharField add to choices from front-endDjango CharField 添加到前端的选择
【发布时间】:2019-06-12 03:09:21
【问题描述】:

问题描述

假设我有一个带有CharField 的模型,其选项如下:

class MyModelWithChoice(models.Model):
    FIELD1_CHOICES = (('1', 'One'),)
    field1 = models.CharField(max_lenth=32, choices=FIELD1_CHOICES)

有没有办法从前端添加这些选项?

预防问题

我知道可以通过创建另一个模型并为field1 使用ForeignKey 来防止该问题,效果很好。

我想另辟蹊径的原因

我试图避免创建新模型的原因是它实际上并没有携带更多信息。如果它包含有关选择的更多信息,我不会有问题,但在数据库中创建一个表只是为了选择似乎太多开销

【问题讨论】:

  • 通常情况下,选择的想法是静态
  • 关系数据库 loooooooooooove 有一个表只是为了选择。这允许您将外键值存储在事务表中并保持引用完整性

标签: python django database django-models django-orm


【解决方案1】:

我认为你必须使用 django forms 然后你可以在你的 前端 使用 django forms

查看来自 django 官方网站的 this 文档

【讨论】:

  • 我明白了。 django 表单使用模型中指定的选项,我正在考虑添加这些选项,而不需要专门的数据库表来完成这项工作。我认为帖子上的cmets几乎总结了它
  • @robotHamster 那么为什么你不在前端使用 select 字段呢?
  • @robotHamster 如果您使用选择字段并在前端定义您指定的选项,您可以将主题添加到数据库,而无需在模式中指定选项
  • 这仍然意味着我每次想要更新选择时都需要向网站部署更新......我认为问题上的 cmets 直接解决了这个问题
猜你喜欢
  • 2016-01-28
  • 2016-08-10
  • 1970-01-01
  • 1970-01-01
  • 2021-02-11
  • 2022-12-04
  • 2019-01-30
  • 1970-01-01
  • 2020-02-04
相关资源
最近更新 更多