|
来源于:http://trac.seagullproject.org/wiki/Howto/WorkingWithModules 使用模块本文档制作中 .. 概述模块是框架的主要拓展功能,开发人员通过使用框架提供的资源创建和修改模块来开发他们的应用程序的功能 安装模块卸载模块一个模块提供
链接Web 元素Win32平台不支持文件的符号链接(也有翻译成软链接)(除非是Vista以上版本)。Windows 用户可通过下列方法模仿文件符号链接。
1. 下载 http://www.dynawell.com/reskit/microsoft/win2000/linkd.zip 2. 解压,并把linkd.exe放到 C:\Windows\System32 或 C:\WINNT\System32 目录 这样,symlink()函数就可以和Linux/Mac一样的在Windows使用。 从: http://fr.php.net/manual/fr/function.symlink.php#56654 改编而来 扩展和自定义模块注册载入数据A schematic for data deps in task loading: 1) default data -> modules IDs, perms/roles 2) sample data -> whatever u like, just to populate model for demo purposes 3) custom data -> data specific for your app, in most cases all you need to extend svn base code 4) navigation -> requires roles IDs, module IDs (created in 1) 5) block data -> requires section/page IDs, roles IDs (created in above) 模块初始化If a file named init.php is discovered in the root of your module, it will be loaded on every request whether the specific module is requested or not. 如果在你的模块的根目录下有一个init.php文件,那么这个文件在每次请求时被载入而不管这个模块是不是当前模块。 如,CMS的init文件可能定义了一些常量会在Foo模块中用到,因为Foo模块使用了CMS模块的功能。但是如果只是请求Foo模块也仍然需要使用那些常量。全局的载入init文件正量出于这种考虑。 重建模块我们可以给seagull重建过程添的任务栈添加任务。一个例子是当你需要在数据库中设置存储过程,视图,函数。因为PEAR对分界符语法会有问题,你可能想直接执行SQL文件。尝试下面几个步骤: 1. 创建一个自定义的任务,只要将它放到你的模块的根目录下它就会在重建seagull时自动被读取并调用 2. 直接使用shell_exec()调用mysql,将你的sql文件的路径传给它,直接执行 3. 将task的名字添加到 $conf['site']['customRebuildTasks'] 测试单元测试按照seagull其它范例模块的命名方式将你的测试文件命名并将它们放到你的模块的tests文件夹下,这样就会在执行Test Runner时在目录树下会显示模块的单元测试结点。 功能测试将你的web测试文件也放到你的tests文件夹下,要让它们显示在Selenium test runner目录树下,你必须在seagull/tests/SeleniumTestSuite.html文件中引用这些文件。 |