项目结构并在所有模块控制器下共享var

发布于 2024-11-05 15:11:17 字数 640 浏览 0 评论 0原文

我有以下结构:

modules/group
modules/group/modules/forum
modules/group/modules/gallery
modules/group/modules/events

这是构建组的正确方法吗?还是更好

modules/group
modules/group/controllers/ForumController.php
modules/group/controllers/GalleryController.php
modules/group/controllers/EventsController.php

另一个问题。我需要组模块下的所有操作控制器中的组对象,并且我不想在所有控制器中编写以下代码

$group = Group::model()->findByPk($_GET['idgroup']);

网址如下:

/group/<idgroup>/forum/<idforum>
/group/<idgroup>/gallery/<idgallery>

执行此操作的正确方法是什么?

I have the following structure:

modules/group
modules/group/modules/forum
modules/group/modules/gallery
modules/group/modules/events

Is this a correct way of structuring groups? or is better

modules/group
modules/group/controllers/ForumController.php
modules/group/controllers/GalleryController.php
modules/group/controllers/EventsController.php

And another question. I need group object in all actions controllers under group module and i dont want to write the following code in all controllers

$group = Group::model()->findByPk($_GET['idgroup']);

The url's like:

/group/<idgroup>/forum/<idforum>
/group/<idgroup>/gallery/<idgallery>

What is the right way to do this?

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(1

撧情箌佬 2024-11-12 15:11:17

这是正确的结构方式吗
组?

答案取决于几个因素:

  • 您是否从第三方获取论坛、画廊和活动模块?
  • 论坛、画廊和活动是否包含自己的模型、视图和控制器?
  • 您是否计划制作论坛、画廊和活动独立模块以供其他人在他们的 Yii 应用程序中使用?

如果有上述任何一个,那么是的,将它们放入自己的模块中是有意义的。否则,最好将它们添加到 group 模块中。

根据 Yii 文档:

模块是一个独立的软件
由模型、视图组成的单元,
控制器及其他配套
组件。


关于将组对象添加到所有控制器操作,通常我会为我的模块添加一个基本控制器类(类似于 /group/components/GroupController.php)并扩展该控制器而不是我所有控制器中的基础控制器。 GroupController 应该扩展 Yii 的 CController 并包含您希望从模块控制器访问的组对象。

Is this a correct way of structuring
groups?

The answer depends on a couple things:

  • Are you pulling in forum, gallery and events modules from a 3rd party?
  • Do forum, gallery and events contain their own models, views and controllers?
  • Do you plan on making forum, gallery and events stand-alone modules that others can use in their Yii applications?

If any of the above, then yes, it would make sense to put them into their own modules. Otherwise, adding them to the group module would be preferred.

According to Yii documentation:

A module is a self-contained software
unit that consists of models, views,
controllers and other supporting
components.


In regards to the adding the group object to all controller actions, generally I'll add a base Controller class for my module (something like /group/components/GroupController.php) and extend that controller rather than the base one in all of my controllers. GroupController should extend Yii's CController and contain the group object that you want to have accessible from your module's controllers.

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文