2016-06-23 3 views
1

私はwtforms_tornadoとwtformsと一緒にPython 2.7でTornadoを使用しています。 私はすでにWTFormsを使ってFlaskでプロジェクトを開発しました。 私はこのプロジェクトをFlaskからTornadoに変え始めましたが、この時点では固まってしまいました。WTForms {{form.field}}でTornadoを使用すると、入力フィールドの代わりに "<input name = 'field'>"と表示されますか?

あなたのテンプレートのその部分のためTornado's auto-escape featureを無効にする必要がありrun.py

class SignupForm(Form): 
    email=StringField('email',[ 
    validators.Required(message='Email Required'), 
    ],) 

class MainHandler(RequestHandler): 
    def get(self): 
     form=SignupForm() 
     self.render('templates/home.html',form=form) 

class SignupHandler(RequestHandler): 
    def post(self): 
     form=SignupForm(self.request.arguments) 
     if form.validate(): 
      email=form.data['email'] 
      self.write(email) 
     else: 
      loader=template.Loader('templates/') 
      self.write(loader.load('home.html').generate(form=form)) 

home.html

<form enctype='multipart/form-data' action='/signup' method='POST'> 
    {{ form.email }} 
<input type='submit' value='Sign Up' /> 
</form> 

Output

答えて

0

{% raw form.email %} 
関連する問題