我尝试根据查询结果是否与属性上的原始实体匹配来对它们进行排序。我可以通过以下查询在mySQL中轻松完成此操作:
SELECT * FROM table
ORDER BY prop = 'value' DESC;
但是,在Doctrine中,当我尝试以下操作时:
// $qb is an instance of query builder
$qb->select('e')
->from('Entity', 'e')
->orderBy('e.prop = :value', 'DE
好的,我正在重写一些代码,使用Doctrine (2.5)。
旧代码创建了一个查询,其内容如下:
SELECT * FROM couples INNER JOIN individuals ON (couples.id = individuals.couple_id)
GROUP BY couples.id
HAVING SUM(individuals.date_of_birth <= '1976-01-01') > 0
我不知道如何最好地使用Doctrine QueryBuilder来实现这个目标。这是一个非常简单的示例,真正的查询要长得多,并且有几个有子句,所有这
我正在尝试创建一个简单的查询,以便在一个查询中获取所有相关实体(参见)。由于某些原因,学说遇到了错误:
调用PersistentCollection中非对象上的成员函数add()
完全堆栈跟踪:
Error: Call to a member function add() on a non-object in \vendor\doctrine\orm\lib\Doctrine\ORM\PersistentCollection.php line 177
at n/a
in \vendor\doctrine\orm\lib\Doctrine\ORM\Persiste
我们需要为我们的应用程序设置一个表前缀名。我希望我们不需要它,但用户是用户。现在我们有了这个TablePrefix订阅者
class TablePrefixSubscriber implements \Doctrine\Common\EventSubscriber {
protected $prefix = '';
public function __construct($prefix = '') {
$this->prefix = (string) $prefix;
}
public function loadClassMetadata(Load
我使用简化的控制器,没有服务容器。我正在尝试将教义注入到服务中。下面是错误:
ContextErrorException: Catchable Fatal Error: Argument 1 passed to Acme\Controller\WebController::__construct() must be an instance of Doctrine\ORM\EntityManager, none given, called in /home/hcs/Core/app/cache/dev/appDevDebugProjectContainer.php on line 3036 an
我正在尝试在query查询中检索布尔值。我可以成功地检索doctrine查询中的字符串值,但是在从实体类添加变量名为active的布尔参数时,我得到了一个错误
[Syntax Error] line 0, col 111: Error: Expected end of string, got '1'
完整的理论片段
$results = $this->getDoctrine()->getRepository('RealBundle:Cats')
->createQueryBuilder('q')
我正在使用spring框架和工作存储库级别的实现。
我有一堂课:
@Repository public interface MyClassReadRepository extends ReadRepository<MyClass, Integer>
在这个类中,有一个方法如下所示:
@Query("SELECT a FROM MyClass a WHERE a.type IN :myType ORDER BY :someProperty :someOrder") Page<MyClass> findByTypeAndOrder(@Param("m
我正在尝试在FOSUserBundle上实现事件
<?php
namespace EasyApp\UserBundle\Service;
use Symfony\Component\Security\Core\SecurityContext;
use Symfony\Component\EventDispatcher\EventSubscriberInterface;
use Doctrine\Bundle\DoctrineBundle\Registry as Doctrine;
use EasyApp\UserBundle\Entity\UserLogin;
use FOS\Use
我正在为我的Symfony应用程序中的查询创建一个SQLFilter。
问题是筛选器没有应用于查询(也没有调用),即使它已正确启用(请参见下面)。
存储库没有链接到实体,因为数据库在我的应用程序外部,但它仍然可以访问数据。
我漏掉了什么吗?
这是过滤器:
<?php
namespace App\SQL\Filter;
use Doctrine\ORM\Mapping\ClassMetadata;
use Doctrine\ORM\Query\Filter\SQLFilter;
class UserRoleFilter extends SQLFilter
{
public
我正在尝试用guzzle设置缓存,但似乎不能让它工作,也没有找到任何关于它的文档。我正在使用guzzle 5和描述服务来调用web api。缓存订阅者似乎连接到了客户端,但当我的网页重新加载时,我的查询似乎没有缓存。
下面是我用来构建客户端的ClientFactory类:
use Doctrine\Common\Cache\ArrayCache;
use Doctrine\Common\Cache\FilesystemCache;
use Guzzle\Plugin\Cache\CachePlugin;
use GuzzleHttp\Client;
use GuzzleHttp\Command
我想在春天用JpaRepository做类似的查询。我找不到路了。
如果在原生查询中,我想要类似于
select * from staff where (
name like '%param1%' OR
address like '%param1%' OR
staffNo like '%param1%')
order by name limit 10 offset 0
我已经成功地将它转换为除了'like‘函数之外的用于限制和偏移的JpaRepository。我当前的代码:
List<Staff> findByIdNotNu
我尝试使用Doctrine (v1.2.2)中的几个事务。下面是我的测试:
// Open a new database connection
$cnx1 = Doctrine_Manager::connection('mydsn'); // $cnx1 will be named '0'
// Open a second database connection
$cnx2 = Doctrine_Manager::connection('mydsn'); // $cnx2 will be named '1'
// Start
作为我网站的一部分,我正在尝试使用Symfony2和Doctrine2创建一个标签(大众分类)系统。
我遵循下面文档中的表和查询示例来创建我的Doctrine实体:
当我尝试将MySQL查询(文档中给出的)转换为Doctrine Query Builder查询时,innerJoins出现错误。示例如下:
来自文档的MySQL查询:
SELECT tag_text
, COUNT(*) as num_tags
FROM Tag2Post t2p
INNER JOIN Tags t
ON t2p.tag_id = t.tag_id
GROUP BY tag_text;
My Doctrine Qu