首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >django-crispy-forms:更改输入名称

django-crispy-forms:更改输入名称
EN

Stack Overflow用户
提问于 2018-02-06 21:29:58
回答 1查看 1.1K关注 0票数 1

我遇到了一些关于django-crispy-form的小问题。

我目前有一个表单,它成功地显示了我的模型中的所有字段。

但是,我想将html-attribute name更改为其他属性。我意识到这可能很困难,因为django-crispy-forms可能希望名称与模型中的字段相同。

我设法更改了id,但name不会更新。除了更改数据库中我的列的名称之外,是否有可能修复此问题?

示例代码

代码语言:javascript
复制
from django import forms
from crispy_forms.helper import FormHelper

class CompanyForm(forms.ModelForm):

    def __init__(self, *args, **kwargs):
        super(CompanyForm, self).__init__(*args, **kwargs)
        self.fields['name'].widget.attrs['id'] = 'company_n' # works
        self.fields['name'].widget.attrs['name'] = 'company_n' # does not work

        self.helper = FormHelper()
EN

回答 1

Stack Overflow用户

发布于 2018-02-15 07:37:32

更改模型中的列名是更改ModelForm表单字段的名称属性的方法。

根据我的经验,对于设计合理的模型来说,这应该不是问题。

django中高效数据建模的一个很好的指南是:

https://simpleisbetterthancomplex.com/tips/2018/02/10/django-tip-22-designing-better-models.html

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/48644242

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档