【发布时间】:2010-11-04 04:15:36
【问题描述】:
我目前正在编写一个使用模块的应用程序。模块部分一切正常,但我并不完全清楚在同一页面上显示多个模块的最佳方法是什么。常见的类似 MVC 的系统可以工作的方式是像“site.com/article/full/18543/how-to-lose-weight”这样的 URL(我并不是在暗示你的任何事情 :))-> 会启动“文章" -module 并使用参数 "18543" 和 "how-to-lose-weight" 调用它的 "full" -method。
但是,我正在编写一个应用程序,我需要在同一页面上有多个模块。目前,我让用户创建、删除和修改页面。他有一个界面(GUI)来决定页面的外观。例如,他可以将页面命名为“文章”并使其看起来像一个两列布局,他希望在侧边栏的右侧有一个喊话框,而在主体(较大的列)上有文章。现在,我将如何去构建这样的 URL?我想保留我当前的页面系统,但我发现想出一个解决方案有点困难。您会看到,如果 URL 将加载“文章”模块,则不会加载喊话框。所以,我猜 URL 是对包含有关要加载哪些模块的信息的数据库条目的引用?这是我目前的想法。因此,在用户创建了一个页面“文章”并将两个模块放入“文章”页面(这是一个两列布局)之后,URL“site.com/article/full/18543/how-to -lose-weight" 将加载 "article" -page,它告诉应用程序需要加载的模块。
这让我想到了两个问题/问题。首先,URL 的其余部分“/full/18543/how-to-lose-weight”会转到“article” - 模块还是“shoutbox” - 模块?我该如何确定?第二个问题是,如果这个“shoutbox”模块有一个注册帐户的链接而不是匿名发布,那么这个链接会将用户带到哪里?
我基本上是想找出一种在不同页面、模块和 URL 之间建立关系的好方法。
目前我有: 处理外观和可以放置模块的可能位置的皮肤。 页面告诉哪些模块在哪个“页面”中以及它们的位置(在皮肤中)。
现在我需要确定使用 URL 的方式。欢迎任何帮助。 :)
仅供参考:如果重要的话,我正在使用 PHP 和 MySQL...
【问题讨论】: