Можно ли найти столбцы с использованием нескольких значений в Doctrine и Symfony2?
image у меня есть следующая структура базы данных
class voters
{
protected $voterid;
protected $imageid;
protected $action;
}
// $voterid = is the current voter
// $imageid = is the id of the voted image
// $action = is upvote/downvote,delete
что произойдет, если я хочу искать сразу несколько наименований, чтобы проверить, если столбец существует , что-то вроде
$dummy = findOneBy('voterid'=>1,'imageid'=>2,action=>"upvote");
if($dummy)
{
//column exists!
}
это возможно?
2 ответов
посмотреть базы данных и доктрине
Если вы хотите получить продукт, относительно некоторых свойств, вам просто нужно использовать метод findOneBy
с параметрами массива:
$product = $repository->findOneBy(array('name' => 'foo', 'price' => 19.99));
вы должны передать все значения в виде массива следующим образом:
$dummy = $this->getDoctrine()->getRepository("AcmeDemoBundle:User")->findOneBy(array(
'voterid'=>1,
'imageid'=>2,
'action'=>'upvote',
));
if($dummy)
{
//column exists!
}
где key of array-имя столбца, value - значение в этом столбце.
Примечание: AcmeDemoBundle:User
- это ваша сущность