【问题标题】:django-tables2: create a input text boxdjango-tables2:创建输入文本框
【发布时间】:2013-11-18 15:52:58
【问题描述】:

我想创建一个表格,其中包含多个显示现有数据的列,以及一个包含可以输入数据的文本框的列。

当我在 forms.py 中使用我的“动物”模型时,我看到了输入框。但是,当我在 tables.py 中使用相同的模型时,我会看到一个“--”(破折号)而不是输入框。

我的models.py:

class Animal(models.Model):
    specie = models.CharField(max_length=20)
    count = models.CharField(max_length=20)

我的表单.py:

class AnimalForm(forms.ModelForm):
    class Meta:
        model = Animal

我的表.py:

class AnimalTable(tables.Table):
    class Meta:
        model = Animal

我什至尝试手动指定一个文本框,但这没有帮助:

class AnimalTable(tables.Table):
    count = forms.Textarea()
    class Meta:
        model = Animal

如何在 django-tables2 表中创建一个输入框?

【问题讨论】:

    标签: python django python-2.7 django-tables2


    【解决方案1】:

    我找到了一个可用的解决方案here

    TEMPLATE = """
    <input id="count" maxlength="100" name="count" type="text"/>
    """
    class AnimalTable(tables.Table):
        count = tables.TemplateColumn(TEMPLATE)
        class Meta:
            model = Animal
    

    我希望这对其他人也有帮助。

    【讨论】:

      【解决方案2】:

      我想你可能误解了django-tables2 包的概念。它的目的是显示表格数据,并能够对其进行排序和其他一些格式化内容。因此,您不能将表单字段添加到 tables.Table 类中,因为它需要列。

      支持的列列表可在此处的文档中找到:http://django-tables2.readthedocs.org/en/latest/#built-in-columns

      【讨论】:

        猜你喜欢
        • 2019-04-28
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2016-09-08
        相关资源
        最近更新 更多