草庐IT

doctrine-orm

全部标签

php - Symfony2 - 在处理实体时覆盖默认的 Doctrine 查询

对于我的项目,我有一个包含许多项目的工作区(一种用户),我想知道是否有一种方法可以在我调用$workspace->getProjects()只获取事件项目(不是存档的项目)。这样我就不必过滤我的集合,而且它会减少从数据库返回的数据的大小。/***Acme\DemoBundle\Entity\Workspace**@ORM\Table()*@ORM\Entity*/classWorkspace{/***@varinteger$id**@ORM\Column(name="id",type="integer")*@ORM\Id*@ORM\GeneratedValue(strategy="AU

php - 原则 2 - 一对多单向

关于在Doctrine2中创建一对多单向关系的几个问题:是否需要连接表?docs说“看这个例子”,但我看到的只是生成的模式。有人介意快速举个例子,这样我就能得到正确的注释吗? 最佳答案 您使用的是2.0.x版本的文档。检查thisone.您将拥有示例。是的,您可以避免在两个类之一中使用注释。 关于php-原则2-一对多单向,我们在StackOverflow上找到一个类似的问题: https://stackoverflow.com/questions/24874

php - 内存管理 Symfony 表单和 Doctrine

当使用Symfony构建表单时,表单的构建速度非常慢并且内存峰值。该表单是使用一些子表单构建的,并使用了一些一对多关系。当表单的数据变大(多方实体更多)时,表单变慢并且内存使用量越来越大,这看起来不错,但时间和内存使用量似乎不是。例如,当多边有大约71个实体时,内存使用量约为116MB,加载需要14秒。我已经推断出完成的查询数量(从75到4),尽管内存峰值仍然在创建表单的那一刻发生$form=$this->createForm(newTapsAndAppliancesType(),$taps);有什么提示和技巧可以加快速度吗? 最佳答案

php - 获取 "Integrity constraint violation: 1048 Column ' payment_id' cannot be null"using Doctrine & Symfony

我已经被困了几天来处理这个问题。我一直在查看其他StackOverflow问题和不同的论坛,但我无法让它工作,所以这就是这个问题的原因。我正在开发一个包含付款的系统,所以我创建了一个“付款”类,如下所示:/***Payment**@ORM\Table()*@ORM\Entity(repositoryClass="PaymentRepository")*/classPayment{/***@varinteger**@ORM\Column(name="id",type="integer")*@ORM\Id*@ORM\GeneratedValue(strategy="AUTO")*@JMS\

php - Symfony2+学说 : How to convert iso8859-1 to utf-8 and viceversa?

我们正在构建一个使用Oracle数据库的Symfony2应用程序。数据库中的所有数据编码为WE8ISO8859P15(iso-8859-1),所有网站编码为utf-8。有没有办法把从数据库接收到的数据全部转成utf8,把发到DB的数据全部转成iso-8859-1,而不是把网站转成iso8859-1?也许使用Doctrine事件订阅者?如果是这样,我应该拦截哪些事件? 最佳答案 我用MSSQL实例解决了一个类似的问题,用于从utf8转换为latin1,反之亦然。我执行以下步骤:定义自定义DBAL类型在启动Bundle方法上初始化(我想

php - 如何在页面加载期间从 Symfony2 获取学说查询统计信息

我想在页面的页脚添加一些统计信息,如“184ms/6/10ms”。其中184毫秒是页面生成时间,6是查询计数,10是数据库查询所花费的时间。我可以计算出页面生成时间,但我如何从原则中获取数据库统计信息?这当然是在应用程序环境中运行时,我很欣赏在app_dev中,当symfony分析器正在运行时,可能有一种方法可以获取它。如有任何帮助,我们将不胜感激。 最佳答案 您可以使用DebugStack对象来完成此操作。您将拥有一个包含每个查询及其各自执行时间的数组。示例:$doctrine=$this->get('doctrine');$do

php - Symfony 2 Doctrine MS SQL 错误

我已经开始从事Symfony2.3项目,我需要将用经典Asp编写的金融网站转换为Php。客户端有要与Symfony2.3和doctrine一起使用的Ms-Sql数据库,我已经创建了数据库并从模式文件中加载了空表。现在,每当我尝试从数据库(Ms-Sql)生成实体时,我都会收到以下错误:Doctrine\DBAL\DBALExceptionUnknowndatabasetypetimestamprequested,Doctrine\DBAL\Platforms\SQLServer2008Platformmaynotsupportit有谁知道如何解决这个问题或者我应该怎么做才能避免这种情况?

php - Symfony2 实现数据库翻译的最佳方式

我正在将一个多语言网站重构为symfony。该站点在数据库(产品描述、产品名称...)和语言表中存储了大量语言信息。它看起来很像这些:表产品:-ID-价格-股票-...表产品语言:-id_product-id_language-姓名-描述表格语言:-ID-姓名-代码所以我正在考虑将其迁移到symfony和doctrine的最佳方式,我一直在研究可翻译的扩展,但我不知道它是否适合这里(我不确定它是否可能将语言表添加到其中)谢谢! 最佳答案 我使用KNPTranslatablebehavior构建了一个多语言电子商务平台这太棒了。它肯定

php - Symfony2 功能测试 : Is a database required or not?

我必须为在应用程序中注册用户的Controller编写功能测试。Controller有两个方法(和路由):registrationAction(route=registration)endAction(route=registration/end)现在我想为这两种方法编写功能测试。我的问题是:当Controller在数据库中创建并保存一个新用户时,我应该使用测试数据库吗?实体管理器的mock是一种解决方案吗?以及如何测试用户是否已在数据库中正确创建?Symfony的文档,谈论functionaltestingofforms,不提数据库,一般就是表单的填写和提交。但是,如果我尝试在我的功

php - Symfony 2/Doctrine : How to lower the num of queries without losing the benefit of ORM?

我正在使用Symfony2.7和Doctrine。我的Controller操作通常如下所示:#my/namespace/Controller/ItemsController.php->listAction()$items=$this->get('repository.items')->findAll();return$this->render('itemsList.html.twig',array('items'=>$items));在我的模板中,我喜欢迭代关联的实体:#my/namespace/Resources/views/itemsList.html.twig{%foritemi