forms.py内容
class GameServerForm(Form):
id = IntegerField('GameServer Id',[DataRequired()])
name = StringField('GameServer Name',[DataRequired()])
host = StringField('GameServer Host',[DataRequired()])
models.py内容
class GameServer(db.Model):
__tablename__ = 'GameServers'
serverId = db.Column(db.Integer,primary_key=True)
serverName = db.Column(db.String(32),unique=True,index=True)
serverHost = db.Column(db.String(64),unique=True,index=True)
views.py内容
@main.route('/addGameServer',methods=['GET','POST'])
def addGameServer():
gameserverform = GameServerForm()
print gameserverform
if gameserverform.validate_on_submit():
gameserver = GameServer.query.filter_by(serverId=gameserverform.id.data).first()
if gameserver is None:
gameserver = GameServer(serverId=gameserverform.id.data,
serverName=gameserverform.name.data,
serverHost=gameserverform.host.data)
print gameserver
db.session.add(gameserver)
db.session.commit()
flash('add server complete')
return redirect(url_for('main.index'))
else:
print 'aaaaaaaaaaaaaa'
else:
print 'out run'
return render_template('addgameser.html',gameserverform=gameserverform)
addgameser.html内容
{% for message in get_flashed_messages() %}
{{ messages }}
{% endfor %}
项目起来之后,在表单页面进行提交操作

程序执行的是else里面的内容

也就是没有进入gameserverform.validate_on_submit():这里的操作
这是为什么的?
Copyright 2014-2025 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号
额,自己解决了
在html中加了以下内容
就正常了。