Witam, chciałbym stworzyć filtr użytkowników po adresie zamieszkania i adresie wysyłki. Obie te wartości znajdują się w bazie contact.
Odpowiednio contact_id
billing_city
shipping_city
. Miasta sie powtarzaja, wiec trze uzyc distinct.
Kombinuje w modelu coś takiego:
Core_Model_Contact
public function getDistinctCities() {
$table = $this->getTable();
$select = $table->select()->setIntegrityCheck(false);
$select->distinct()
->from(array('c' => 'contact'), array('c.billing_city'=>'city'))
->where('c.deleted != 1');
$result = $table->fetchAll($select)->toArray();
return $result;
}
W formie cos takiego:
Core_Form_Contact_Search
$city = new Zend_Form_Element_Multiselect('city');
$cityModel = new Core_Model_Contact();
$city->setMultiOptions($cityModel->getMultiOptions('contact_id', 'billing_city'));
$city->setLabel('City');
Porzebuje, zeby do url'a wchodzilo &city%5B%5D=nazwamiasta, czyli w tablicy musi byc np 'Łódź' => 'Łódź'.