新在Symfoob娱乐下载ny 3.4:弃用包继承
2017年9月28日·发表的哈维尔Eguiluz
警告:这篇文章是关于一个不受支持的Symfony的版本。ob娱乐下载其中一些信息可能是过时了。阅读最近的Symfony文档ob娱乐下载。
最大的一个变化即将到来的Symfony 4版本的包来管理应用程序代码。ob娱乐下载包将作为第三方插件安装在仍然存在供应商/
,但自己的代码将默认情况下的生活src /
目录,它将使用纯PHP名称空间,而不是包。
在Syob娱乐下载mfony 3.4我们朝着简化工作包。这就是为什么我们弃用包继承我们会在Symfony 4.0中删除它。ob娱乐下载这继承机制传统上用于覆盖一些模板,控制器和其他元素的第三方包。在Syob娱乐下载mfony 4.0你需要使用替代方案来覆盖这些元素:
- 控制器:定义一个具有相同路径的路由控制器你想覆盖和实现自己的逻辑。
- 模板:使用普通模板覆盖机制与传统
应用程序/资源/ < BundleName > / / < templateName > .html.twig观点
dir或新模板/包/ < BundleName > / < templateName > .html.twig
dir Symob娱乐下载fony 3.4和更高版本;您还可以使用树枝名称空间定义新的模板在相同的名称空间包你想要定制。 - 路由:不要加载包路线或应用相同的技术作为控制器。
- 服务和配置:使用编译器或装饰服务。
- 实体:不可能,除非包提供了一个映射的超类。
- 形式:使用形式的扩展。
- 验证:不可能,除非包提供验证组。
- 翻译:包继承无关;覆盖对吧翻译领域。
发表在#生活在边缘
评论
Marko Malović
9月28日表示,2017年在14:13)
它是有意义的。
克利斯朵夫Coevoet
9月28日表示,2017年在16:42
你指@nicolas这种情况下?
克利斯朵夫Coevoet
9月28日表示,2017年16时
对于任何想,包继承系统不允许覆盖实体,验证规则,形式或翻译(而不是服务通过DI扩展加载)。所以覆盖这些的弃用后并不会改变。
唯一的实际更改路由(重新定义路线总是可能的),模板(模板覆盖不使用一个孩子包总是工作太)和控制器。
唯一的实际更改路由(重新定义路线总是可能的),模板(模板覆盖不使用一个孩子包总是工作太)和控制器。
Arnaout Slimen
说9月29日,2017年在06:53
这是否意味着我不能单独的代码(在/ src)成包? !
如果我想创建一个第三方包将被安装在/供应商的我怎么能这样做呢?
如果我想创建一个第三方包将被安装在/供应商的我怎么能这样做呢?
@Arnaout你仍然可以使用包为您的应用程序代码,但它不会正式推荐,有些功能可能不会像预期的那样工作(今天的情况相反,包推荐,但有些人不使用它们)。
关于第三方包,没有什么变化。您仍然可以创建这些包和他们仍然安装在供应商/事实上,当前的应用程序包的可能的解决方案是把它们变成私人的第三方包并安装在您的应用程序。
关于第三方包,没有什么变化。您仍然可以创建这些包和他们仍然安装在供应商/事实上,当前的应用程序包的可能的解决方案是把它们变成私人的第三方包并安装在您的应用程序。
:Bertineau
说9月29日,2017年在10:04
Symob娱乐下载fony 3.4兼容普通PHP名称空间的应用程序代码?和…有什么准则这一举动?
@Pierre-Charles是的,当使用Symfony和Symob娱乐下载fony Flex 3.3或更高版本。看到https://github.com/syob娱乐下载mfony/symfony-demo为例。
@Mickael第三方包(安装在供应商/)将像以前一样因为我们没有改变任何东西(除了汽车上牌和自动配置如果使用Flex,但这只是一些自动化)。
Javier Eguiluz is a certified Symfony engineer.
Get certified! Online exams available in all countries.
Register Now