Skip to content

Instantly share code, notes, and snippets.

@YankeeTube
Created January 30, 2019 15:16
Show Gist options
  • Select an option

  • Save YankeeTube/b50cfa7d88f9ece69ed8cde0f5c41a0c to your computer and use it in GitHub Desktop.

Select an option

Save YankeeTube/b50cfa7d88f9ece69ed8cde0f5c41a0c to your computer and use it in GitHub Desktop.
# Form Input tag example
# forms.py
def set_field_html_name(field, new_name):
"""
:param field: 대상 필드
:param new_name: 변경할 이름 type(str)
html tag에 name 옵션을 Django Form Field Variable(변수)가 아닌
new_name 인자로 강제 할당
"""
old_render = field.widget.render
def _widget_render_wrapper(name, value, attrs=None):
return old_render(new_name, value, attrs)
cls.widget.render = _widget_render_wrapper
class TestForm(forms.modelsForm):
def __init__(self, *args, **kwargs):
super(TestForm, self).__init__(*args, **kwargs)
set_field_html_name(self.fields['nametest'], "on_change")
nametest = forms.Charfield(required=False, widget=forms.TextInput(attrs={
'name':'on_change',
'id':'test',
'class':'class',
'type':'radio',
})
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment