问题标签 [flask-admin]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
python - 为什么 flask-admin 需要 mongoengine 的 ListField 才能具有字段类型?
我正在尝试使用flask-admin,这看起来很简单,但是我遇到了问题。
我在集合中有一个字段,它被定义为 a ,列表字段类型ListField()
的隐式类型为 。None
我没有为该字段定义类型的原因是因为我保留了一个列表列表,并且没有其他优雅的方法(我发现)可以使用 mongoengine 完成此操作。
但是烧瓶管理员不允许我定义这样一个字段,错误为ListField "movements" must have field specified for model
.
有没有解决的办法?
python - 如何覆盖/自定义 Jinja2 模板中(本机)对象的默认格式?
我想更改在烧瓶管理员中向我显示日期的默认方式,为其提供特定的时区并以更易于阅读的格式显示。
有很多方法可以解决这个问题(过滤器__html__
、、、、__str__
Babel 等),但是虽然这些方法可行,但我的问题是是否有更通用的方法来解决更普遍的问题。格式化日期的具体问题只是一个例子。
在我的场景中,我无法控制日期对象——我不能子类化它或monkeypatch a __str__
or__html__
方法。我希望它对模板中的所有日期自动发生,并且我不想编写自定义管理模板,并且我不想在我的模板中为这种情况使用显式过滤器。
我理想的解决方案是以某种方式为 Jinja 指定一个默认过滤器,以便所有数据在呈现之前都通过该过滤器。我可以自己编写过滤器,但我不知道如何让 Jinja 使用它。
我的一个想法是以某种方式使用自动转义(请参阅this question),但我看不到任何方法可以在没有讨厌的猴子补丁的情况下覆盖 Jinja 的自动转义功能。
有任何想法吗?
flask-admin - 我如何更改烧瓶管理员的语言环境?
我想更改语言环境,例如:
locale='zh_CN'
不是管理员应用程序的语言环境,我需要更改烧瓶管理员的语言环境代码。
python - 如何编辑烧瓶管理员以支持多租户?
我正在使用 Flask-peewee,寻找一种授予管理员权限的方法,我想制作一个多租户管理仪表板。
我已经为显示交易做了:
所以现在我想在他们想要编辑表单时保留商家 ID 的登录用户 ID。
*编辑图片文本:Merchant_id 必须是默认的 auth.loggedinid
python - 几何场 (LON/LAT) 的 AdminModelConvertor
我想为 Flask-Admin 创建一个视图以在几何字段中输入坐标。如何创建两个文本字段并将它们转换为几何对象?
这是我迄今为止尝试过的(除了不可数的其他事情)
POI 对象如下所示:
非常感谢你的帮助!
performance - Flask Admin - 性能问题
尽管 Flask 应用程序的性能很好,但我在 Flask-Admin 中面临性能问题。
我的模型是:
术语确实有很多记录,插件中的记录更多。如果我在 Flask-Admin 中单击到任何地方以获取酒店、期限、Ck 或插件的详细信息,这是不可能的,因为它直到超时才会完成。
请你能告诉我在哪里可以改进它吗?谢谢
python - flask-admin:在特定条件下取消对模型的更新
我正在使用烧瓶管理员的 ModelView 类和 SQLalchemy。我想检查 on_model_change() 函数中的特定条件,如果满足条件,则取消对模型的更新。我该怎么做?
通过这样做(尽管不是我最喜欢的例程)创建新模型时,我能够摆脱更改:
但是,当现有条目发生更改时,我看不到取消更新的方法。
我也查了return False
。那没有用。
python - Flask-Admin ModelView 自定义验证?
我正在研究结合 PeeWee 后端 ModelView 的 Flask-Admin(但我的问题也可能适用于 SQLAlchemy 后端),在文档或示例中我找不到两件事:
(1)。当我的模型有一个唯一字段并且我测试/尝试复制它时,我会得到一个默认的 Flask 崩溃屏幕,并显示消息:“IntegrityError:列用户名不是唯一的”
我正在测试https://github.com/mrjoes/flask-admin/blob/master/examples/peewee/simple.py中提供的 PeeWee 示例,并将第 21 行更改为“username = peewee.CharField(max_length= 80,唯一=真)”
然后我尝试用“username”=“user1”添加两个用户。
有没有一种礼貌的方法可以返回编辑屏幕(甚至是列表屏幕,任何管理屏幕都可以)但带有受控的错误消息?我不需要自定义错误消息,当前消息正常(IntegrityError:列用户名不是唯一的)。但我不想要崩溃屏幕。
我可以设置/使用 Flask 的默认 500 页面,但是我会完全退出 Flask-Admin 流程,用户会“错过”他刚刚输入的数据。
我想回到编辑屏幕,但有某种警报/错误消息。我不介意必须扩展模板,这不是问题。但是我找不到一个地方来拦截错误并正确处理它。有什么建议么?
(2):
我还需要一种在流程中添加一些预保存验证的方法。例如,我处于具有 initial_date 和 final_date 的实体的编辑表单中,我想在保存之前确保 final_date 大于 initial_date 或为空。
我可以通过 javascript 在客户端执行此操作,扩展该实体的编辑模板并在尾部块中添加我的验证脚本(并拦截 form.submit 事件)。
但是,如果我的验证需要一些服务器端的最后一分钟验证怎么办?有什么方法/地方可以拦截流程并添加我的验证,幸运的是,以问题 1 中讨论的相同方式返回我的错误消息?
提前致谢,
问候,
python - SQLalchemy 和 Flask-admin - 性能问题
我不了解它使用的 Flask-Admin 和 sql 查询。我有性能问题,但主要原因是调用了不合理的查询。
我有模型:
如果我想阅读 Flask-administration 中一家酒店的信息,有几个可疑的查询
例如。以下查询通过争论被调用了百万次,这没有意义
并且在没有过滤所选hotel.id的情况下调用另一个查询,并且查询直到超时才完成,并且再次无用
请你能给我一些提示我的管理员发生了什么,我真的不知道我应该改进什么。
谢谢
flask - Flask-admin:flask.ext.admin.contrib.sqla - ModelView - 表单验证
首先,我尝试使用 form_base_class 为我的管理视图配置验证方法:
但是编辑表单和创建表单是一样的。
然后我尝试使用 create_form 和 edit_form 方法,但似乎没有任何后果:
那么我们如何使用不同的编辑和创建测试来验证烧瓶管理表单呢?