如何在magento中搜索优先级记录


How to search records with priority in magento

我们有四个城市的人的地址记录…

例如四个城市,如德里、孟买、金奈和班加罗尔

如果人们来自德里意味着必须从德里列表地址获取记录,然后是孟买,金奈,班加罗尔

第一要务应该是1)德里2)孟买3)金奈4)班加罗尔等等

如何用城市智慧从数据库中获取记录

public function getSearchResults($params)
{
    $city = @$params['city'];
    $category_id = isset($params['category']) ? $params['category'] : "";
    $searchResultsCollection = Mage::getModel("listings/listings")->getCollection()->addFieldToSelect('*');
    $searchResultsCollection->addFieldToFilter("status", 1);
    try {
        if ($city != '') {
            $searchResultsCollection->addFieldToFilter("city", array('like' => $city));
        }
        if ($category_id != '') {
            $searchResultsCollection->addFieldToFilter('cat_ids', array(array('finset' => array($category_id))));
        }
        if ($limit != 'all') {
            $searchResultsCollection->getSelect()->limit($limit, $startFrom);
        }
        $searchResultsCollection->getSelect()->order("verification DESC");
        $searchResultsCollection->load();
    } catch (Exception $e) {
    }
    return $searchResultsCollection;
}

Thanks in advance

尝试在order方法调用中添加FIELD表达式;

->order(new Zend_Db_Expr("FIELD(city, 'Delhi','Mumbai','Chennai','Bangalore')"))