2014-01-03 2 views
0

У меня есть очень простой вопрос о получении данных из таблицы. Например, у меня есть адресная адреса, и я хочу получить адрес с адресом_ид = ...Базовый с symfony и доктриной

Мои сопоставления/модели генерируются с помощью доктрины (сначала db). Таким образом, код генерируется через терминал.

Теперь у меня есть, например, в indexaction, где я хочу, чтобы получить адрес с идентификатором = ...

Как я могу это сделать?

ответ

1

Вы прочитали документацию о symfony 2 и доктрине?

Документация: http://symfony.com/doc/current/book/doctrine.html

Вы должны создать запрос с помощью доктрины 2 (ОРМ) синтаксис.

Exemple:

$product = $this->getDoctrine() 
     ->getRepository('AcmeStoreBundle:Product') 
     ->find($id); 

или если вы хотите, чтобы найти только один элемент, используя идентификатор:

$repository = $this->getDoctrine() 
    ->getRepository('AcmeStoreBundle:Product'); 
$product = $repository->findOneById($id); 

Если вы хотите более сложный запрос вы можете добавить фильтр в хранилище:

$repository = $this->getDoctrine() 
    ->getRepository('AcmeStoreBundle:Product'); 

$query = $repository->createQueryBuilder('p') 
    ->where('p.price > :price') 
    ->setParameter('price', '19.99') 
    ->orderBy('p.price', 'ASC') 
    ->getQuery(); 

$products = $query->getResult(); 

Посмотрите на эту документацию, чтобы иметь более подробную информацию: http://docs.doctrine-project.org/en/latest/reference/query-builder.html

Смежные вопросы