我在我的龙卷风应用程序中使用wtforms将SQLAlchemy模型呈现给HTML,如下所示:
class UserProfileForm(ModelForm):
class Meta:
model = models.User
only = ['username', 'first_name', 'last_name']
它工作得很好,但是表单上的字段按照last_name、用户名、first_name的顺序排列,这可能会让用户感到困惑。是否有一种方法来设置生成表单字段的特定顺序?
路由
from flask import Flask, render_template, request, flash, redirect
from flask_wtf import FlaskForm
# from flask.ext.sqlalchemy import SQLAlchemy
import logging
from logging import Formatter, FileHandler
from forms import *
import os
@app.route('/wallthickness')
def wallthickness():
f
我正在使用烧瓶来开发一个网络应用程序。我最初是手工做HTML,然后切换到使用WTForms (这是一个教育项目,所以我展示了构建该项目的每一步)。
在尝试添加HTML5表单字段(如EmailField )时,我感到有点困惑。我在网上搜索了WTForms文档,无法找到如何使用HTML5 EmailField创建WTForm。
然后我安装了允许它的这个模块,一切都正常工作。但我对增加额外的依赖感到不高兴,特别是因为它似乎没有被积极开发()。
然后我在WTForms github页面上结束,发现实际上对所有新的HTML5字段都有支持,但这些字段在默认情况下并不是导入的。因此,而不是使用
from W
我正在使用wtforms,我需要创建一个东西,它将根据数据库中的信息生成一个表单定义:动态表单创建。我开始意识到需要做些什么,而我才刚刚开始。我可以创建表单并通过wtforms/flask使用它们,但从数据定义表单目前超出了我目前的技能水平。
有没有人做了这件事,并有一些意见要提供?这是一个模糊的问题,还没有实际的代码。我还没有找到任何例子,但这并不是不可能的。
mass of variable data to be used in a form --> wtforms ---> form on webpage
编辑:
因此,例如,我们可以使用调查。调查由几个SQLAlcehmy模
我试图创建一个网站,将有许多不同的形式。表单基本相同,只是每个表单都有用户必须输入的几个额外的不同变量,即它们都有name、description和file字段,但每个都有几个不同的额外字段。我想知道是否有一种方法可以从flask中的单个表单动态生成这些字段。例如 from flask_wtf import FlaskForm
from wtforms import StringField, FileField, TextField, SubmitField
class dataEntryForm(FlaskForm, variables):
我有一个包含价格十进制字段的表单,如下所示:
from flask.ext.wtf import Form
import wtforms
from wtforms.validators import DataRequired
from decimal import ROUND_HALF_UP
class AddListingBase(Form):
title = wtforms.StringField(validators=[DataRequired()])
details = wtforms.TextAreaField(validators=[DataRequired()]
有问题的代码:
from flask import Blueprint, render_template, abort
from flask.ext.wtf import Form
import os
from jinja2 import TemplateNotFound
from models import Member
from wtforms.ext.sqlalchemy.orm import model_form
@simple_page.route('/register')
def register():
form = model_form(Member, F
wtforms FieldList && validation出现问题...它应该说字段必须有Int值,而不是这个字段是必需的为什么f.data有None,2,None值,而不是'def',2,'abc‘?
from webob.multidict import MultiDict
from wtforms import Form
from wtforms import FieldList, IntegerField
from wtforms import validators
class SearchForm(Form):
locality
我使用WTForms (连同烧瓶、烧瓶-wtf、sqlalchemy)来验证REST传入的JSON。我意识到WTForms更多地针对HTML的呈现和验证,但我选择它是因为它可以从我的sqlalchemy模型中自动生成表单(多亏了wtforms.ext.sqlalchemy)。
不管怎样,问题就在这里。我的模型之一包括布尔字段,它通过DataRequired验证器转换为DataRequired。问题是,即使我传递正确的数据,“此字段是必需的”错误信息也会导致验证失败。我的表格:
class MyForm(Form):
name = TextField('name', va
这个问题与有关,但集中于我在问其他问题时不知道的基本问题之一。
我正在使用Python、Flask和WTForms来创建一个表单。这里是蟒蛇:
from flask import render_template
from flask_wtf import FlaskForm
from wtforms import DecimalField, SubmitField
from wtforms.validators import NumberRange, DataRequired
class NumberForm(FlaskForm):
question_one = DecimalFie
我有一个非常简单的表单,有两个字段(一个DateTime和一个日期)。我正在尝试让它们为每个都使用一个选取器进行渲染。
from flask.ext.wtf import Form
import wtforms as wtf
import wtforms.fields.html5 as html5
class CaseForm(Form):
foo = html5.DateTimeField("Date Time Sample")
bar = html5.DateField("Date Time Sample")
字段foo不使用选取器小部件呈现,
我不太确定该如何处理这件事。我希望我能到那里。
例如,我在一个页面上有一个满是地址的表。这些计数是动态的(可以是5或10或任何其他计数)。我希望有可能在一个页面上编辑它们。
我的方法是使用wtforms创建一个表单来编辑一个地址,并在jinja2 for loop中将其相乘,然后将其附加到html属性的name中,并从迭代中提取id loop.index0,这样我就可以手动提取每一行数据,并在需要计算它时将其放回表单中。
因此,此示例的形式为:
class AdressForm(Form):
name = TextField()
所以现在我的模板方法看起来像下面这样(分解到一个输入域)
我正在尝试通过ajax和wtforms验证表单,我有一个表单,其中一个字段如下:
name = StringField('Name :', description = "enter your name", validators=[InputRequired(message='please enter your name')])
我的服务器端代码是这样的:
@app.route('/validation', methods=['get', 'post'])
def validation():
我有一个表单与几个整型字段动态添加在一个视图中,这些字段是为用户排名从1-N。我很难弄清楚如何编写一个验证器来确保reach field.data具有唯一的值,并且是从1到N。
我已经知道如何在每个的表单中动态添加字段,但是我想像一样对它们进行相互验证,而我还没有弄清楚如何正确地引用被覆盖的validate函数中的动态字段。
如何在验证器中引用表单实例中的动态字段?在上面链接的问题中,他们在一行中这样做:
for field in [self.select1, self.select2, self.select3]:
但是因为我是用setattr动态添加这些字段,所以我不知道这些字段的名称。我