[英]With Flask-Admin and Flask how can I submit a form\view based on ModelView from code?
[英]How can I hide the “list” view in flask-admin?
我对 Flask 和 Flask-Admin 真的很陌生。
我的目标只是删除用户访问某个 model 的“列表”视图的可能性。 我确信一定有一些简单的方法可以做到这一点,因为有一种方法可以用于编辑、创建等,但我就是找不到。
我尝试将列表添加到“不允许的操作”中,但(如预期的那样)不起作用的“列表”实际上并不是一个操作。 还尝试了几种攻击该视图的方法(分配空表单、分配空模板和其他徒劳的任务)。
我需要的是用户在单击顶部导航栏时直接到“创建”选项卡(这是该模型唯一可用的选项卡)go。
谢谢你。
基于@charlemagne 的解决方案
@expose('/')
def index(self):
return redirect(url_for('newpatient.create_view'))
由于列表视图是为 '/' url 呈现的默认视图,这会将用户重定向到创建视图,即使再次单击“列表”也会使列表视图实际上无法访问。
由于列表视图是索引视图,并且您需要有一个索引视图,所以不能简单地禁用它。
您可以做的是覆盖视图的index
方法,并将其路由到不同的端点,例如edit_view
。
您还可以检查is_accessible
中的端点,但这会导致用户在尝试通过菜单访问 model 时被路由到现在无法访问的列表视图。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.