Сейчас я работаю с Part 4 OF The SymBlog project Я получаю эту ошибку сообщение Symfony2 в:Symfony2 Неопределенный метод. Имя метода должно начинаться с findBy или findOneBy
Undefined method 'getLatestPosts'. The method name must start with either findBy
or findOneBy!500 Internal Server Error - BadMethodCallException
Это мой PostRepository Класс:
<?php
namespace BLog\BlogBundle\Entity; use Doctrine\ORM\EntityRepository;
class PostRepository extends EntityRepository {
public function getLatestPosts($limit = null) {
$qp = $this->createQueryBuilder('p')
->select('p')
->addOrderBy('p.created', 'DESC');
if (false === is_null($limit)) {
$qp->setMaxResults($limit);
}
return $qp->getQuery()
->getResult();
}
}
Это Страница контроллера. Метод действия:
<?php
namespace Blog\BlogBundle\Controller;
use Symfony\Bundle\FrameworkBundle\Controller\Controller;
class DefaultController extends Controller {
public function indexAction() {
$em = $this->getDoctrine()
->getEntityManager();
$posts = $em->getRepository('BlogBundle:Post')
->getLatestPosts();
return $this->render('BlogBundle:Default:home.html.twig', > >array(
'posts' => $posts
));
}
...
}
Это образец мой код ../../../Entity/Post:
<?php
namespace Blog\BlogBundle\Entity;
use Doctrine\ORM\Mapping as ORM;
use Doctrine\Common\Collections\ArrayCollection;
/**
* @ORM\Entity(repositoryClass="Blog\BlogBundle\Entity\PostRepository")
* @ORM\Table(name="post")
* @ORM\HasLifecycleCallbacks
*/
class Post {
....
...
..
/**
* @ORM\Column(type="text")
*/
protected $post;
...
...
Я также попытался все решения в этом post по ScoRpion
Что здесь проблема ???
все выглядит хорошо, поэтому должно работать. У вас есть опечатка в '' namespace BLog \ BlogBundle \ Entity'' (капитал '' L'' в '' BLOG''). Это не имеет значения, но попробуйте изменить его. –
Спасибо @ Tomasz Madeysk за ваш ответ .. все-таки проблема существует .... Я попытался переслать метод getLatestPosts(), но он ничего не ответил –
Возможный дубликат [SymBlog: Неопределенный метод. Имя метода должно начинаться с findBy или findOneBy] (http://stackoverflow.com/questions/28852157/symblog-undefined-method-the-method-name-must-start-with-either-findby-or-find) –