2012-09-05 3 views
10

WTForms 필드 개체를 호출하면 렌더링 된 필드가 생성되고 모든 인수는 특성으로 간주됩니다.하이픈을 포함하는 특성을 WTForms 필드에 추가하는 방법

form.field(attribute='value') 

는 하나의 키워드 인수로 파이썬에서 그들을 파싱 할 만들기, 하이픈을 포함하는 데이터-제공으로 내가 HTML5 사용자 정의 데이터를 추가 할 수 있습니다 같은 속성을 어떻게

<input attribute='value'> 

뭔가를 반환?

답변

19

해당 키 - 값 쌍과 사전을 만들고 필드 호출에 전달하는 ** 사용

attrs = {'data-provide': "foo"} 
form.field(**attrs) 

편집 : 해답의 일부가되어야 @NiklasB에 의해 코멘트 같은데 : flaskflask-WTF과 함께 사용하는 경우 템플릿에 {{ form.field(**{'data-provide': 'foo'}) }}을 사용하십시오.

+10

플라스크 -WTF가있는 플라스크를 사용하는 경우 템플릿에 {{form.field (** { 'data-provide': 'foo'}}}}를 사용하십시오. –

+0

고마워 - 고마워. 나는 다음과 같이했다 : {{form.phone (** { '데이터 포맷': 'ddd ddddddd', '클래스': 'form-control bfh-phone', 'placeholder': 'Phone'})}} –

+0

https://stackoverflow.com/questions/20440056/custom-attributes-for-flask-wtforms –

0

form.field 함수 호출에서 이와 같은 사전을 사용할 필요는 없습니다. 는 ** 그래서 그냥 대신에 매개 변수를 추가, 함수에 대한 명명 된 매개 변수로 사전 항목의 압축을 풉니 다 :

{{form.field} (= 'foo는'데이터-제공)}

을하지만 어떻게 그렇게 AFTER 어떤 해당 필드에 필수 매개 변수. 즉, 왜 매개 변수를 추가 할 수있을 때 바로 사전을 풀어야합니까?

관련 문제