【问题标题】:How do you manage web navigation info in your application?您如何在应用程序中管理 Web 导航信息?
【发布时间】:2011-01-28 03:14:45
【问题描述】:

我正在构建一个应用程序,在该应用程序中,不同的用户可以根据他们支付的内容获得不同的菜单项。菜单层次结构也将有多个级别。

解决这个问题的最佳方法是什么?

我假设我需要一个表示菜单层次结构的数据库表,包括导航中节点的父子关系以及项目的排序。然后是另一个表,我用它来管理用户是否有权访问该表中的特定项目。

当我渲染视图时,我会引用菜单和用户的访问权限来输出菜单,并且我还需要一个函数来检查每个控制器的相同授权,以防用户手动键入在他们不应该访问的控制器的 URL 中。

这是正确的方法吗?有什么建议可以缓存它以防止不断查找此类信息吗?我愿意接受有关您如何处理此类要求的任何建议。

【问题讨论】:

  • 是每个客户都有自己的站点/数据库部署实例,还是只有一个实例?

标签: database-design navigation data-modeling


【解决方案1】:

当用户登录时,我会检查当时拥有的所有权限,然后将它们存储到他们的会话中。这样,您只需从数据库中查找它们一次。

否则,您在每个控制器页面中处理菜单的方法似乎很好。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2010-10-02
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2020-01-14
    • 2011-09-25
    相关资源
    最近更新 更多