私は Symfony2 を初めて使用しますが、うまくいけば十分に明確です。
私はリポジトリを持っています:
class districtRepository extends EntityRepository
{
public function findAllFromCity($idCity)
{
return $this->createQueryBuilder('d')
->where('d.city = :city')
->setParameter('city', $idCity)
->orderBy('d.name', 'ASC');
->getQuery()
->getResult();
}
}
そしてフォームタイプ
class searchPropertyType extends AbstractType
{
public function getDefaultOptions(array $options)
{
// return array('validation_constraint' => $collectionConstraint
return array ('required'=>false, 'csrf_protection' => true);
}
public function buildForm(FormBuilder $builder, array $options)
{
$em = $this->getDoctrine()->getEntityManager();
$builder
->add('keywords')
->add('disctrict')
->add('price_min')
->add('price_max')
->add('type')
->add('date_from' , 'date', array('widget' => 'single_text'))
->add('date_to' , 'date', array('widget' => 'single_text'))
;
}
public function getName()
{
return 'searchProperty';
}
}
findAllFromCity()
でオプションのリストを取得するにはどうすればよいです->add('disctrict')
か??
Query Builder ソリューションは知っていますが、コードを繰り返す必要があります。
サービス コンテナ ソリューションについて読みました。私の場合は適用されますか?方法を教えてもらえますか、それとも私を良い軌道に乗せることができますか??