【问题标题】:best way to implement laravel database system to manage posts read/share/edit permissions实现 laravel 数据库系统以管理帖子读取/共享/编辑权限的最佳方法
【发布时间】:2019-01-18 18:05:08
【问题描述】:

感谢您对此的帮助! 我正在设计一个与 Laravel 共享文档和帖子的应用程序。 两周以来我一直尝试自己做,但我不确定最好的方法是什么。 我尝试过实现许多包并使用了 crud 生成器,但作为 Laravel 初学者,很难找到好的包并混合它们。 我想要的是一个像谷歌文档共享行为但用于帖子的系统。 您可以写一篇文章并将其设置为

  • 私人的
  • 与拥有秘密链接的人共享
  • 与用户名列表(或数据库中的 ID)共享
  • 与用户组共享

那么构建它的最佳方法是什么?

  • 1) 使用包?哪一个?
  • 2) 表用户 |表帖子 |表权限
    • 每个用户拥有一个可以读取/编辑的权限(权限级别)
  • 3) 表用户 | table_posts 包括每个帖子的权限
    • owner_id
    • share_link
    • users_that_can_read
    • users_that_can_edit

如果有人可以指导我学习一个很好的教程或给我一个良好的开始结构,让这个表格变得高效和安全。

也许我没有看到这一切的复杂性,所以我会喜欢任何建议 问题是我想要一种比 wordpress 更灵活的权限管理,它提供用户权限级别,数据的可用性将由简单的订阅者管理很多事情(文件、帖子、可能是 cmets、组,可能还有更多东西) .

【问题讨论】:

    标签: database laravel data-structures packages access-rights


    【解决方案1】:

    你只需要创建三个表roles,permissionsroles_permission。用户的角色放在表roles表中。用户的权限存储在表permission中。您可以在roles_permission 表中映射特定用户的角色和权限。但是,为了更灵活地添加基于角色的权限,请使用entrust 包。在其中,您可以动态添加/更新/删除角色和 laravel 中的权限。

    【讨论】:

    • 但这是否允许用户仅举例说 greg、max 和 john 以及我的自行车小组可以阅读这篇文章?
    • 是的,您也可以为个人和组分配权限。
    • 我不确定问题是否被理解...我不是要赋予 admin 角色或 visitor 角色或 编辑器 角色我试图赋予帖子,即来自用户的 id=87 即 id=32 由该用户而非管理员用户进行私人访问,并且对于这个特定用户来说,可以说用户 ids=[34 ,57,128] 和 groups ids=[13,28,...] 可以阅读,用户或组 ids[...] 可以贡献,用户或组 ids[...] 可以评论等...我在谷歌或委托包文档上得到的所有内容都是关于用户角色,如管理员等
    猜你喜欢
    • 2014-06-25
    • 1970-01-01
    • 2012-07-24
    • 1970-01-01
    • 2012-04-28
    • 2012-06-09
    • 2021-02-14
    • 2017-03-10
    • 1970-01-01
    相关资源
    最近更新 更多