gpt4 book ai didi

php - Symfony2、Doctrine2、findBy() 命令不起作用

转载 作者:可可西里 更新时间:2023-11-01 13:36:22 25 4
gpt4 key购买 nike

我为我的文章实体创建了一个存储库,我正在尝试获取按 ID DESC 排序的所有值。但是,我每次都会得到按 id ASC 排序的值。这是我的 ArticleRepository.php:

<?php

namespace Acme\BlogBundle\Entity;

use Doctrine\ORM\EntityRepository;

class ArticleRepository extends EntityRepository
{
public function findAll()
{
return $this->findBy(array(), array('id' => 'DESC'));
}

public function findOneBySlug($slug)
{
$query = $this->getEntityManager()
->createQuery('
SELECT p FROM AcmePagesBundle:Article a
WHERE a.slug = :slug
')
->setParameter('slug', $slug);

try {
return $query->getSingleResult();
} catch (\Doctrine\ORM\NoResultException $e) {
return false;
}
}
}

有什么想法吗?

最佳答案

语法看起来不错。这应该提供一组有序的文章。

首先,确保在文章实体中使用正确的 Repository 类设置 @Entity 注释,

/**
* @ORM\Entity(repositoryClass="...");
*/
class Article
{
// ...
}

此外,如果您想使用 native 帮助程序,您只需从 Controller 中的 ArticleRepository 调用 findBy

 $articles = $this->get('doctrine')
->getRepository('YourBundle:Article')
->findBy(array(), array('id' => 'DESC'));

关于php - Symfony2、Doctrine2、findBy() 命令不起作用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19449740/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com