我应该在Yii框架中将自定义窗口小部件文件放在哪里?

时间:2011-12-30 11:25:57

标签: yii widget yii-components yii-extensions

从此页面

http://www.yiiframework.com/wiki/23/how-to-create-a-breadcrumb-widget/

它似乎表明我们应该将文件放在组件文件夹中。但是如果我的小部件包含javascript和css文件,那么这些文件应该放在哪里?

顺便说一句,这是一个好主意,我创建它作为扩展?如果我这样做,所有窗口小部件文件都更加自包含在扩展文件夹内的文件夹中。但是,由于我要处理的小部件是非常自定义的,因此它不太可能对其他人或我的其他项目有用。使它成为一个扩展似乎有点奇怪。

据我所知,只要我在代码中使用的路径是正确的,我放置这些文件的位置并不重要,但我想知道常见的做法。

2 个答案:

答案 0 :(得分:11)

我认为通常的做法是将小部件放在扩展名文件夹中,并使用js&名为asset的文件夹中的css文件。在php类文件中,首先使用yii资产管理器发布资产进行初始化。 文件结构可能类似于

extensions/
   widget_name/
     widget.class.php
     assets/
         plugin.js
         style.css

答案 1 :(得分:8)

我会加入建议,将小部件放在 / protected / extensions 下。 我以稍微更详细的方式放置资源: / protected / extensions / WidgetClassName / assets / 以及 / protected / extensions / WidgetClassName / views /...中的小部件视图文件。 EM>

不要忘记编辑/protected/config/main.php并在'import'部分添加一行(用于自动加载窗口小部件):' ext.WidgetClassName.WidgetClassName。 *'