遇到关于 acl 的问题

2020-02-29 11:59:37 +08:00
 chenqh

我有一个订单页面
管理员要看到所有的订单, 还有管理
下游有看到自己的订单,table 包括 downstream_id
代理要看到代理下面的下游的所有订单, table 包括 proxy_id
我现在是这么做的
管理员 /admin/admin/order_list
, 下游 /admin/downstream/order_list
代理 /admin/proxy/order_list
现在的问题就是页面要copy, 两次,刚刚群里问了一下,这居然属于acl的问题, 我理解里面acl只包括操作呀, 难道也包括数据的过滤?

1257 次点击
所在节点    Python
1 条回复
lasuar
2020-02-29 16:17:45 +08:00
你这个场景其实是树形权限表结构,不太清楚你的表是如何设计的,按我的想法一个接口就可以了,接口的参数就是用户 id,查询订单的时候,订单有个商家 id,商家 id 可能有上级,在用户表中有个字段叫 father_id 表这个人的上级 id (当然这样设计需要限制代理商最大深度),查询语句:select * from order where agent_id in (select id from user where id=2 or father_id=2),这是最多两层的情况,如果有三个以上的层级,就需要递归查询把所有的 agent_id 拿到,再去查订单表了,如果是无限极那又是另一种处理情况了。。

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/648553

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX