Mr.*_*ine 0 silverstripe silverstripe-4
我想知道为什么SS4主目录中没有"模型/视图/控制器"目录?似乎一切都应该进入"mysite/code"......如何实现MVC风格?
MVC更像是一种软件架构模式,而不是组织文件的方式.SilverStripe框架只对您应该如何组织代码做出一些假设:
使用SilverStripe 4,每个模块的默认代码文件夹名为src或code.在该文件夹中,您可以根据需要自由组织文件.理想情况下,您以符合PSR-4的方式构建文件夹结构,以便您的文件夹名称与您的名称空间匹配.
与Model类相同,您可以将控制器放在任何您想要的位置.
虽然有Page类的默认假设.这些期望匹配控制器具有与页面相同的命名空间.因此,如果您的页面被命名为:Company\Module\Pages\MyPage,框架将寻找Company\Module\Pages\MyPageController.
但是,通过getControllerName在页面上实现该方法并返回FQCN以供控制器使用,您可以自由地覆盖它.
也称为"模板"应该在templates文件夹中.每个模块(您的mysite文件夹也是一个模块)都可以有一个templates文件夹.
除此之外,您还可以拥有主题.主题通常捆绑模板,css和其他资产.在themes文件夹中,您可以拥有多个主题文件夹,每个文件夹都可以有一个templates文件夹.
| 归档时间: |
|
| 查看次数: |
64 次 |
| 最近记录: |