我是Flask的新手,并且想在我的网站上创建一个On / Off切换按钮。我想知道是否以及如何可以包括动态标签。下图显示了我的想法:

我当时在考虑使用a,wtfforms SubmitField但我不太了解如何在我的route.py文件和html模板之间实现这种动态行为。我在想这样的事情:
forms.py:
from flask_wtf import FlaskForm
from wtforms import SubmitField
class PowerSwitchForm(FlaskForm):
power_switch = SubmitField("ON")
Run Code Online (Sandbox Code Playgroud)
route.py:
from flask import render_template, flash, redirect, url_for
from app import app
from app.forms import PowerSwitchForm
@app.route('/power', methods=['GET', 'POST'])
def power():
power_switch = PowerSwitchForm()
if power_switch.power_switch.label.text == "ON" and power_switch.validate():
flash("Power has been turned ON")
power_switch.power_switch.label.text = "OFF"
return redirect(url_for('power')
elif power_switch.power_switch.label.text == "OFF" and power_switch.validate():
flash("Power has been turned OFF")
power_switch.power_switch.label.text = "ON"
return redirect(url_for('power')
return render_template('power.html', form0=power_switch) …Run Code Online (Sandbox Code Playgroud) 我有一个元组(x,y),其中x是一个字符串,y是一个整数.现在,我想执行的操作y,比如y += 1,不希望创建一个新的记录.我怎样才能做到这一点?
我不明白以下示例中的区别.有一次类的一个实例可以改变另一个实例的类变量,而另一个实例却不能?
例1:
class MyClass(object):
mylist = []
def add(self):
self.mylist.append(1)
x = MyClass()
y = MyClass()
x.add()
print "x's mylist: ",x.mylist
print "y's mylist: ",y.mylist
Run Code Online (Sandbox Code Playgroud)
输出:
x的mylist:[1]
你的mylist:[1]
因此,这里的实例x类A是能够访问和修改类属性mylist,这也是该实例的属性y的A.
例2:
class MyBank(object):
crisis = False
def bankrupt(self) :
self.crisis = True
bankX = MyBank()
bankY = MyBank()
bankX.bankrupt()
print "bankX's crisis: ",bankX.crisis
print "bankY's crisis: ",bankY.crisis
Run Code Online (Sandbox Code Playgroud)
bankX的危机:是的
bankY的危机:错误
为什么这个例子不起作用?