草庐IT

symfony-plugins

全部标签

php - Symfony2 SoftDeleteable 不适用于 QueryBuilder Delete

Softdelete行为在通过实体管理器执行删除语句时工作正常,如下代码:$entity=$this->em->getRepository('Users')->find(7);$this->em->remove($entity);$this->em->flush();但是当通过QueryBuilder执行相同的功能时,硬删除将在数据库上执行$qb=$this->em->createQueryBuilder();$qb->delete('Users','p');$qb->where($qb->expr()->eq('p.id',':id'));$qb->setParameters(arr

php - 如何获取 Symfony 控制台应用程序的运行路径?

有什么办法可以得到SymfonyConsole中的运行路径吗?应用?例如(假设php解释器在PATH中):cd/tmpphp/home/user/myapplication/app/console.phpmycommand应该返回/tmp,因为console.php是从/tmp启动的。 最佳答案 getcwd()将执行您需要的操作。您可以从任何目录执行app/console,PHP会知道它是哪个目录。我用下面的例子来验证这一点。setName('demo:cwd')->setDescription('GetCurrentWorkin

php - 在 Symfony2 的产品中使用 assetic 时找不到 Twitter Bootstrap glyphicons 字体

我已经阅读了很多关于此的帖子,但无法将其用于我的项目。所以基本上我有一个Symfony2项目,其中包括twitterbootstrap(v3)。在开发模式下一切正常,但是当我在生产模式下尝试时,我收到错误消息,提示无法找到twitterBootstrap字体:Failedtoloadresource:theserverrespondedwithastatusof404(NotFound)http://localhost:8080/Symfony/css/fonts/glyphicons-halflings-regular.woffFailedtoloadresource:theserv

php - Symfony 表单选择禁用翻译器

我在选择字段时遇到问题,这些字段已被翻译,但它们不应该被翻译。从Symfony2.7开始,当当前页面上有不可翻译的值时,工具栏会通知您。现在我实际上正面临着发生这种情况的事实。在2.7之前,这只是被记录下来,但实际上没有发生任何事情。在表单字段“日期”的情况下,将尝试翻译所有数字。我正在寻找的是一种在选择字段上禁用翻译器的方法,这样选项就不会被翻译。它可以像设置translation_domain=null或translate=false或类似的东西一样简单。有什么想法吗? 最佳答案 从Symfony2.7开始,您可以使用choic

php - Symfony2 问题变量 id 从数据库中获取对象

我想从数据库中获取$id和$name但我得到了这个异常:TheidentifieridismissingforaqueryofGrupa\ProjektBundle\Entity\Car我在实体Car的Doctrine注释中有GeneratedValue(strategy="AUTO")。我怎样才能解决这个问题?路由匹配!另外,我有一个ID为1的数据库条目,名称为指向图像的某个URL的值(http://www.supercarworld.com/images/fullpics/595.jpg)。这是我的名为SupercarsController.php的Controller:names

php - Symfony Doctrine 数组结果的 Flatten Array Result

通过存储库,我得到了一个数组结果(每个数组都是一个实体对象),如下所示:array(0=>objectoftypeentity,1=>anotherobjectoftypeentity,2=>anotherobjectoftypeentity,)每个对象都有一些属性,比如id和name等。但我想要的是仅使用每个对象的ID展平整个数组。我想要的是这个(仅用ID展平数组):Array([0]=>1[1]=>6[2]=>23)Mysolution:$ids=array_map($transform=function($entity){if($entityinstanceofEntity){r

php - 如何使用 Symfony2 对数据进行后台解析?

我用PHP和Symfony2编写了一个网络应用程序。用户可以上传包含保存到数据库的数据的CSV文件。CSV文件每一行的解析持续大约0.2秒,因为我向GoogleMapsAPI发出了一些请求。因此,当您上传一个包含5000行的CSV文件时,这是我的应用程序中的一个实际案例,解析整个文件可能需要16分钟。我不希望用户必须等待16分钟才能继续使用我的应用。所以我的问题是:如何在后台解析CSV文件,以便用户继续上网? 最佳答案 您可以创建一个kernel.terminate事件监听器并在那里进行解析。此事件在响应发送到浏览器后触发。示例实现

php - 如何在 symfony2 表单中生成多个复选框

我想在我的Symfony表单中显示来自预定义数组的复选框。用户应该能够选择多个,但我做不到。这是我的代码:publicfunctionbuildForm(FormBuilder$builder,array$options){$roles=array('role1','role2','role3');$builder->add('name')->add('roles','checkbox',$roles);} 最佳答案 参见choicetypereference.publicfunctionbuildForm(FormBuilder$

php - Symfony2 : get Doctrine in a generic PHP class

在Symfony2项目中,当您使用Controller时,您可以通过在thisgetDoctrine()来访问Doctrine/,即:$this->getDoctrine();通过这种方式,我可以访问这样一个DoctrineEntity的存储库。假设在Symfony2项目中有一个通用的PHP类。我怎样才能取回Doctrine?我想有这样的服务可以获取它,但我不知道是哪一个。 最佳答案 您可以将此类注册为service并将任何其他服务注入(inject)其中。假设您有如下GenericClass.php:classGenericCla

php - Symfony 2 功能测试 : authenticate user of own User class

如HowtouseanauthenticateduserinaSymfony2functionaltest?的回答中所述Symfony\Component\Security\Core\User\User有一个简单的解决方案。但是我有不同的用户类(一些必要的附加字段),我想用它来验证用户。我如何为它设置供应商? 最佳答案 这里讨论的是一个棘手的问题:https://github.com/symfony/symfony/issues/5228虽然它是2.1,但我使用2.2时仍然会发生这种情况。下面是我如何进行测试认证://Createa