大局
编辑该页面大局
在10分钟内开始使用Symfonob娱乐下载y CMF !这个快速旅行将指导您完成的基本概念开始Symfony CMF。ob娱乐下载
重要的是要知道Symfony CMF的集合包提供常用功能需要在构ob娱乐下载建一个CMS Symfony框架。在深入阅读之前,你至少应该有一个Symfony框架的基本知识。ob娱乐下载如果你不知道Symfony,从阅读开ob娱乐下载始ob娱乐下载Symfony框架快速浏览。
解决框架和CMS的困境
在开始一个新项目之前,是否会有一个困难的决定是基于一个框架或CMS。当选择使用一个框架,你需要花多少时间为项目创建CMS的功能。另一方面,在选择使用CMS,更难以构建定制的应用程序功能。是不可能或至少很难定制CMS的核心部分。
创建Syob娱乐下载mfony CMF解决这个框架与CMS的困境。它提供Symfony包轻ob娱乐下载松CMS的功能添加到您的项目。然而,正如你仍然使用Symfony框架,您可以构建你能想到的任ob娱乐下载何自定义功能。这种灵活性被称为解耦CMS。
提供的包Symfony CMF可以一起工作,但是他们也能ob娱乐下载独立工作。这意味着你不需要添加所有的包,你可以决定只使用其中一个(如只有RoutingBundle)。
下载Symfony CMF沙箱ob娱乐下载
探讨CMF,最好下载Symfony CMF沙箱。ob娱乐下载沙箱包含许多CMF的示威活动特性和是一个很好的熟悉CMF的操场。
当你想开始一个实际项目与CMF,最好下载Symfony CMF标准版。ob娱乐下载Symfob娱乐下载ony CMF标准版是相似的ob娱乐下载Symfony标准版,但包含和配置必要的Symfony CMF包。ob娱乐下载
下载Symfony CMF沙箱的最好方法是使用ob娱乐下载作曲家:
1
美元作曲家创建项目symfony-cmf /沙箱cmob娱乐下载f-sandbox
建立数据库
现在,唯一剩下要做的是建立数据库。这不是你用来做当创建Symfony应用程序,但是这个Symfony CMF需要一个数据库,使很多事情可配置使用一个管ob娱乐下载理界面。
快速开始,预计你启用了sqlite PHP扩展。在那之后,运行这些命令:
1 2 3 4 5 6 7 8 9
美元cdcmf-sandbox cp app / config / phpcr_doctrine_dbal.yml美元。dist app / config / phpcr.yml或者当你在Windows电脑:# $ app \ config \ phpcr_doctrine_dbal.yml副本。dist app \ config \ phpcr.yml美元php bin /控制台学说:数据库:创建php bin /控制台学说:美元phpcr: init: dbal——迫使美元php bin /控制台学说:phpcr:存储库:init php bin /控制台学说:美元phpcr:夹具:负载- n
提示
你会了解更多关于Symfony CMF的数据库层ob娱乐下载在下一章的快速旅行。
运行Symfony应用程ob娱乐下载序
使用服务器:运行
命令来运行一个本地服务器的演示。
运行一个CMF应用程序一样运行Symfony应用程序,看看ob娱乐下载配置一个Web服务器在Symfonob娱乐下载y的文档。欧宝官网下载app
请求流
现在,沙箱已经可以使用了。导航到主页(http://localhost: 8000 /
)看到演示:
你看,我们已经有了一个完整的网站在我们的演示。让我们仔细看看Symfony CMF的请求流应用程序:ob娱乐下载
首先,你可以看到一个典型的Symfony请求流后,白色的块。ob娱乐下载它创建一个请求
对象将被传递给一个路由器,它执行控制器,控制器使用模型来生成一个视图的响应。
除此之外,CMF添加绿色街区。在接下来的部分中,您将了解更多关于这些分开。
该模型
在创建CMF,团队做了很多研究在使用哪个数据库。他们最终发现JCRJava内容仓库。加上一些其他开发人员创建PHPCR,一个PHP JCR规范的港口。
PHPCR使用目录式结构。它存储元素在一棵大树。元素有一个家长,可以有孩子。
请注意
尽管PHPCR CMF的第一选择团队,包不绑定到一个特定的存储系统。一些包还提供了ORM集成和你也可以轻松地添加你自己的模型。
路由器
在Syob娱乐下载mfony中,路线都存储在一个配置文件。这意味着只有一个开发人员可以改变路线。在CMS,你想要改变路线的网站管理员。这就是为什么dynamicrouob娱乐下载te Symfony CMF介绍。
dynamicroute加载一些路线可能匹配请求从数据库然后试图找到一个精确匹配。数据库中的路线可以编辑,删除,创建使用一个管理界面,所以一切都是完全的控制下管理。
因为你可能还希望其他路由器,像正常的Symfony路由器,CMF还提供了一个ob娱乐下载ChainRouter
。链路由器包含一连串的其他路由器和执行在给定以便找到一个匹配。
使用数据库存储的路线也可以引用其他文件的路径。这意味着一个路由可以有一个内容对象。
请注意
您将了解更多关于路由器进一步在快速浏览。
控制器
当路由匹配,控制器执行。这个控制器通常只能从路线和呈现内容对象。因为它几乎总是一样的,CMF使用一个通用的控制器,它将执行。这可以被设定一个特定的控制器路线或内容对象。
视图
使用RoutingBundle,您可以配置哪些内容呈现的对象是特定的模板或控制器。通用控制器将呈现这个模板。
一个视图也使用一个菜单,提供的KnpMenuBundle,它可以整合与创造。js,编辑。
的装置
现在你知道请求流,您可以开始编辑内容。而正常使用将通过一个web界面编辑内容,CMF沙箱还支持从静态文件加载内容。这主要是用于测试目的。
的加载装置原则:phpcr:夹具:负载
命令。主页编辑,编辑第一个条目src / AppBundle /资源/数据/ page.yml
说一些不同的东西。然后,运行原则:phpcr:夹具:负载
命令获取更改到内容库中。后刷新浏览器,你可以看到你的修改!
别担心,编辑夹具文件只是用于开发和测试完成。CMF配有奏鸣曲管理集成方便的在线编辑,或者你也可以建立自己的编辑系统。