草庐IT

symfony-dependency-injection

全部标签

php - Symfony:扩展原始 AppBundle 模板文件

我在这个结构中有一个包Acme/Bundle/BlogBu​​ndle:app/...app/Resources/views/base.html.twigbin/...Acme/Bundle/BlogBundle/Resources/views/Default/blog.html.twigsrc/...src/AppBundle/...在blog.html.twig中,我想扩展base.html.twig并自动生成AppBundle。这是我最好的猜测:{%extends'@AppBundle/base.html.twig'%}{%blockbody%}test{%endblockbod

php - Symfony 中的自定义配置

我需要定义诸如公司联系人(电话、地址等)之类的配置参数,以便在twig模板中使用。我该怎么办?对我来说最明显的方法是将它们添加到app/config/config.yml文件中,如下所示:#Putparametersherethatdon'tneedtochangeoneachmachinewheretheappisdeployed#https://symfony.com/doc/current/best_practices/configuration.html#application-related-configurationparameters:locale:encontacts:

php - 使用 phpunit 测试命令 symfony

我用symfony3.2创建了一些基本命令来定期生成一些时事通讯当我想用phpunit5.5.4测试我的symfony命令时,我正在处理一些问题。它从一开始就失败了:/***@paramInputInterface$input*@paramOutputInterface$output*/protectedfunctionexecute(InputInterface$input,OutputInterface$output){$output->writeln("Scriptstart");//...$output->writeln("done");}通过这个单元测试:useMyBundl

php - Symfony 自动服务加载失败并显示 "Class does not exist"

我正在使用Symfony的依赖注入(inject)组件(独立的,不在Symfony应用程序中)尝试新的自动服务加载,版本v3.3.13。如果我手动定义一个服务,该类会被正确加载:#services.ymlmyasset:class:Mysite\Asset\Asset#inaPHPfile$container->get('myasset');#works如果我设置了自动加载,它会失败并显示错误消息:ReflectionException:第1070行的/var/www/vendor/symfony/dependency-injection/ContainerBuilder.php中不存

php - docker 和 PHP : getting dependencies (composer) into the container

一点背景:我是docker的新手,还不知道任何最佳实践。我的任务是创建一个基于php的网络服务,我决定使用docker-compose进行配置。因为我们都是花哨的开发人员,所以我们知道-如今不使用composer就无法构建php应用程序。我的问题:我应该在构建中安装依赖项吗?因此,将其添加到我的Dockerfile中:RUNcd/app&&composerinstall--no-interaction--prefer-source--optimize-autoloader或者我应该在开发期间安装依赖项并使用包含的依赖项构建容器镜像吗?我只知道一种不这样做的方法:在开发机器上本地安装依赖

php - 有没有办法在 Symfony 4 中放置队列 worker ?

目前,我在Symfony4环境中工作,该环境需要定期(通过cron)处理命令/操作队列,而无需安装像RabbitMQ这样的服务器包。在Laravel中有一个宏伟的队列系统,它与数据库同步队列和一个监听器一起工作。Symfony4有这样的东西吗?我试过安装JMSJobQueueBundle和QueueBundle,但都无法在Symfony4中安装。 最佳答案 你有这个包https://github.com/php-enqueue/enqueue-dev提供了很多选择 关于php-有没有办法

php - Symfony Lock 组件不锁定——如何解决?

我最近升级到Symfony3.4.x,由于弃用警告而重构LockHandler并陷入奇怪的行为。重构前命令中的代码:classFooCommand{protectedfunctionconfigure(){/*...doesnotmatter...*/}protectedfunctionlock():bool{$resource=$this->getName();$lock=new\Symfony\Component\Filesystem\LockHandler($resource);return$lock->lock();}protectedfunctionexecute(){if(

php - Composer 无法在 symfony 4 上要求 symfony/symfony

我已经通过composer使用以下行安装了最新版本的symfony:composercreate-projectsymfony/skeletonwhatever然后按照此page上的说明进行操作我决定需要整个框架,所以我不必通过输入这个来一个一个地安装所有的包:composerrequiresymfony/symfony但问题是我最终遇到了以下错误:composerrequiresymfony/symfonyUsingversion^4.0forsymfony/symfony./composer.jsonhasbeenupdatedLoadingcomposerrepositories

php - 使用依赖注入(inject)创建实例?

我正在尝试将DI实现到我的应用程序中。下面是我的路线的一个片段,每个路线都有自己的Controller,其中有一个方法来返回View。$router->addRoute('GET','/',['App\Controllers\Frontend\Guest\LoginController','getView']);假设我有多个Controller,我必须在内部传递一个模板类的实例。classLoginController{private$template;publicfunction__construct(Template$template){$this->template=$templ

javascript - 如何将变量从 twig 传递到 vueJS(symfony 2.8 和 VueJS 2)

我有一个symfony2.8应用程序,我最近集成了VueJs2作为我的前端框架,因为它提供了很大的灵active。我的应用程序不是单页的,我使用symfonyController来呈现View。所有的View都包裹在一个基本的Twig布局中:{%blockbody%}{%endblock%}我用webpack加载了大部分JS,我所有的vue组件和JS依赖项都编译在vendor-bundle.js和vue-bundle.js中。我的VueJs实例如下所示:import'./components-dir/component.vue'import'./components-dir/compo