任何人都可以判断这3个扩展之间是否存在根本区别,或者它们是否都做类似的事情?我一直在阅读文档,似乎有很多交叉.我猜一些只是提供更多的功能.
我想在我的应用中添加用户角色,以便某些用户具有某些权限.即level1用户可以创建5个资源,level2用户可以创建10个等等.我一直在寻找滚动我自己,它似乎并不太棘手.我正在考虑使用这个http://flask.pocoo.org/snippets/98/的装饰器,这个解决方案会有任何安全问题吗?我已经在使用Flask-login了,所以我将它与它集成.
正如标题所说,这就是我所拥有的:
form = F(obj = myobject)
myfieldlist= FieldList(FormField(form))
{% for subfield in form.myfieldlist %}
{{ subfield.field }}
{{ subfield.label }}
{% endfor %}
Run Code Online (Sandbox Code Playgroud)
没有输出任何想法?此外,还不完全确定是否需要FormField.谢谢
我是Flask和Python的新手,所以请提前道歉.我正在使用Flask-SQLAlchemy返回数据库行,这一切都正常:
customer = Customers.query.filter_by(cat_id = page).first()
return render_template('test.html',
customer = customer
)
Run Code Online (Sandbox Code Playgroud)
我的问题是我试图弄清楚如何使用循环在我的jinja模板中显示此行的列值.这是解决此问题的最佳方法吗?我得到了"对象不可迭代"的错误,我有点理解,但我不知道如何解决它.
在我目前正在使用的模板中:
{{customer.id}}
{{customer.name}}
{{customer.area}}
etc.
Run Code Online (Sandbox Code Playgroud)
但我想做这样的事情:
{% for item in customer %}
{{item[column]}}
{% endfor %}
Run Code Online (Sandbox Code Playgroud)
查询可以转换为字典吗?
我一直在搜索,试图弄清楚没有运气,这让我觉得我可能走错了路.
任何建议都非常感谢.
.__dict__一些来自我读过__dict__的内容的SQLAlchemy对象.for模板循环现在输出列值,但它也输出许多其他不需要的东西.反正有没有清理它?
models.py
class Customers(db.Model):
id = db.Column(db.Integer, primary_key = True)
cust_name = db.Column(db.String(64))
cust_area = db.Column(db.String(64))
cat_id = db.Column(db.Integer(8), index = True)
Run Code Online (Sandbox Code Playgroud)
views.py
customer = Customers.query.filter_by(cat_id = page).first()
return render_template('test.html',
customer = customer.__dict__
)
Run Code Online (Sandbox Code Playgroud)
的test.html
{% for key, value in customer.items() %}
{{ …Run Code Online (Sandbox Code Playgroud)