小编nsf*_*n55的帖子

如何使用jQuery动态地将WTForms TextField添加到FieldList?

我想使用Jquery添加或删除带有按钮的新WTForm输入字段,就像这里 http://www.sanwebe.com/2013/03/addremove-input-fields-dynamically-with-jquery/comment-page-1 但是使用我的表格字段.

我的表格:

class EditBook(Form):
title = TextField('title', validators = [Required()])
authors = FieldList(TextField())
Run Code Online (Sandbox Code Playgroud)

问题是我不能只是附加例子

$(InputsWrapper).append("{{form.authors(size=20)}}");
Run Code Online (Sandbox Code Playgroud)

它只是打印这个文本.

python jquery wtforms flask-wtforms

3
推荐指数
1
解决办法
4926
查看次数

如何使用WTForms从模型列表创建表单?

我有一个Prediction模型列表.我想将它们绑定到表单并允许使用回发.我如何构建我的表单,以便帖子将Home/Away得分与我绑定到表单的每个项目的Prediction模型id字段相关联?

视图

@app.route('/predictor/',methods=['GET','POST'])
@login_required
def predictions():    
    user_id = g.user.id
    prediction= # retrieve prediction
    if request.method == 'POST':
        if form.validate() == False:
            flash('A score is missing, please fill in all predictions')
            render_template('predictor.html', prediction=prediction, form=form)
        else:
            for pred in prediction:
                # store my prediction
            flash('Prediction added')
            return redirect(url_for("predictions"))    
    # display current predictions
    elif request.method == 'GET':
        return render_template('predictor.html', prediction=prediction, form=form)
Run Code Online (Sandbox Code Playgroud)

形成

class PredictionForm(WTForm):
    id = fields.IntegerField(validators=[validators.required()], widget=HiddenInput())
    home_score = fields.TextField(validators=[validators.required()])
    away_score = fields.TextField(validators=[validators.required()])
Run Code Online (Sandbox Code Playgroud)

模板

  <form action="" …
Run Code Online (Sandbox Code Playgroud)

python jinja2 flask wtforms flask-wtforms

3
推荐指数
1
解决办法
2334
查看次数

将CSS类添加到WTForms SelectField中的选项

任何人都可以告诉我如何将css类分配给选择值.我想用小图像改变每个选项的背景,那么我怎么能用wtforms和css做呢?

class RegisterForm(Form):
    username = TextField('username', [validators.Length(min=3, max=50), validators.Required()])
    img_url = SelectField('avatar', 
            choices=[('static/images/avatars/1.jpg', '1'), 
                ('static/images/avatars/2.jpg', '2'),
                ('static/images/avatars/3.jpg', '3'), 
                ('static/images/avatars/4.jpg', '4'),
                ('static/images/avatars/5.jpg', '5'), 
                ('static/images/avatars/6.jpg', '6'),
                ('static/images/avatars/7.jpg', '7'), 
                ('static/images/avatars/8.jpg', '8'),
                ('static/images/avatars/9.jpg', '9'), 
                ('static/images/avatars/10.jpg','10')])
Run Code Online (Sandbox Code Playgroud)

css python flask wtforms flask-wtforms

2
推荐指数
1
解决办法
3034
查看次数

Flask-WTF表单成功发布,但验证永远不会发生

我已经在WTF表格上挣扎了很长一段时间了.但是这个错误,似乎永远不会消失.我什么时候尝试运行此代码,表单永远不会验证

意见:

@bundle.route('/content/add/', methods=['GET', 'POST'])
@bundle.route('/content/add', methods=['GET', 'POST'])
@bundle.route('/content/edit/<posturl>/', methods=['GET', 'POST'])
@bundle.route('/content/edit/<posturl>', methods=['GET', 'POST'])
@fas_login_required
def addcontent(posturl=None):
    form = CreateContent()
    form_action = url_for('content.addcontent')
    if posturl is not None:
        content = Content.query.filter_by(slug=posturl).first_or_404()
        form = CreateContent(obj=content)
        if form.slug.data == posturl and request.method == 'POST' and form.validate():
            form.populate_obj(content)
            db.session.commit()
            return redirect(url_for('content.addcontent',
                                    posturl=posturl, updated="True"))

    else:
        if request.method == 'POST' and form.validate():
            query = Content(form.title.data,
                            form.slug.data,
                            form.description.data,
                            form.media_added_ids.data,
                            form.active.data,
                            form.tags.data,
                            g.fas_user['username'],
                            form.type_content.data
                            )
            try:
                db.session.add(query)
                db.session.commit()
                # Duplicate entry
            except Exception as e:
                return str(e) …
Run Code Online (Sandbox Code Playgroud)

python wtforms flask-sqlalchemy flask-wtforms

2
推荐指数
2
解决办法
1467
查看次数

什么原因导致"Java Runtime Environment(JRE)1.7版本不受此驱动程序支持..."在我的servlet运行时?

我希望能够单击HTML按钮并让它调用Java内部的方法.有多种方法可以完成这项任务.

我还想看看这个例子中的错误来自哪里.它不会编译.

Java代码:

import java.io.IOException;

@WebServlet("/myservlet")
public class MyServlet extends HttpServlet {

    @Override
    protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
        MyClass myClass = new MyClass();

        if (request.getParameter("button1") != null) {
            myClass.function1();
        } else if (request.getParameter("button2") != null) {
            myClass.function2();
        } else if (request.getParameter("button3") != null) {
            myClass.function3();
        } 
        request.getRequestDispatcher("/WEB-INF/some-result.jsp").forward(request, response);
    }

}

class MyClass {
    void function1() {
        System.out.println("Button 1");
    }

    void function2() {
        System.out.println("Button 2");
    }

    void function3() {
        System.out.println("Button 3");
    }
}
Run Code Online (Sandbox Code Playgroud)

HTML代码:

<html>
<head> …
Run Code Online (Sandbox Code Playgroud)

java servlets jdbc java-ee sql-server-2008

2
推荐指数
1
解决办法
9183
查看次数

日期最佳实践

我有以下问题.我有一个每5分钟运行一次的石英作业,并通过Web服务调用检索一个大对象.此应用程序的目的是它将遍历对象中的List并从多个类别中捕获计数.

一个具体要求是每个类别被分配一个任意窗口,比如说上午9点到12点.如果我们在该窗口中,则计数会从先前的作业继续添加到滚动计数中,否则将被忽略.

问题.我正在加载可配置的开始时间(格式为美国东部时间上午9:00)和一个文件的int持续时间(以分钟为单位,即180).properties.

问题是处理这个问题的最佳方法是什么.现在我只是将可配置的开始时间转换为long我的业务类实例化的时间.我Calendar用来计算long结束时间的值.由于这些都是在1970年代,当我想知道现在是否在这两次之间时,它需要我的一些肮脏.我采用当前new Date()格式,删除年份,Formatter再次使用parse()1970年的日期然后我可以long与我的开始和结束时间进行简单的比较.

我知道必须采用一种不那么难看的方法来解决这个问题.有什么想法吗?

java date-comparison

0
推荐指数
1
解决办法
431
查看次数