Редактирование списка объявлений в админке!

Вопросы и ответы по изменению функционала, смене дизайна, переносу сайта и т.п.

Модераторы: Xpycm, Koduc

Правила форума
ВНИМАНИЕ! Форум не является средством гарантированной поддержки клиентов и пользователей. Поэтому на быстрый ответ тут рассчитывать не нужно, как и на ответ вообще. Сотрудники отвечают по мере своих возможностей.

На форуме действует ограничение в 3 сообщения / сутки.
Если Вы хотите сказать "спасибо", то воспользуйтесь функцией "Повысить репутацию" - зелёная иконка "плюс" под ником ответившего.

Редактирование списка объявлений в админке!

Сообщение propawn » 07 апр 2016, 11:03

Доброго времени суток! Собственно не могу разобраться, как сделать чтобы в разделе объявления сделать фильтр по цене, чтобы можно было искать объявления в админке по цене >= значению которое я укажу.

http://imgur.com/ODPJMot
propawn
Незнакомец
 
Сообщения: 12
Зарегистрирован: 26 мар 2016, 13:20
Очки репутации: 0

Re: Редактирование списка объявлений в админке!

Сообщение andipas » 07 апр 2016, 13:16

В файле protected/modules/apartments/models/Apartment.php

в правилах модели

array('city_id, owner_active, active, type, obj_type_id, ownerEmail, ownerUsername, searchPaidService, deleted, visits, owner_id, price', 'safe', 'on' => 'search'),

в функции public function search() { настройте правило

Код: Выделить всё

$criteria
->addCondition($this->getTableAlias() . '.price >= :price' ); 
$criteria
->params[':price'] = $this->price;
 


работать будет только с выключенным модулем сезонные цены, для работы фильтра с сезонными ценами доработок больше, можем сделать платно, обращайтесь через форму контактов
Часто задаваемые вопросы. Для правки файлов notepad++, netbeans, phpStorm. Для правки CSS firebug.
Аватара пользователя
andipas
Разработчик
Разработчик
 
Сообщения: 695
Зарегистрирован: 28 дек 2011, 22:37
Очки репутации: 30

Re: Редактирование списка объявлений в админке!

Сообщение propawn » 12 апр 2016, 00:24

Спасибо большое, только вопрос, теперь когда заходишь в объявления, пока не введешь какое-то число в поле Цена, не появляются объявления, как сделать чтобы появлялись?
propawn
Незнакомец
 
Сообщения: 12
Зарегистрирован: 26 мар 2016, 13:20
Очки репутации: 0

Re: Редактирование списка объявлений в админке!

Сообщение Xpycm » 12 апр 2016, 08:59

Навскидку.
Попробуйте обернуть в условие if ($this->price)
Т.е должно получиться так:
Код: Выделить всё
if ($this->price) {
    
$criteria->addCondition($this->getTableAlias() . '.price >= :price' ); 
    
$criteria->params[':price'] = $this->price;
} 
Dropbox
Open Real Estate CMS: FAQ | FAQ 2 | FAQ 3
Изображение
Xpycm
Разработчик
Разработчик
 
Сообщения: 1592
Зарегистрирован: 30 дек 2011, 11:06
Откуда: Йошкар-Ола
Очки репутации: 50

Re: Редактирование списка объявлений в админке!

Сообщение propawn » 12 апр 2016, 12:10

Помогло, спасибо, еще вопрос:

Хочу сделать чтобы при введение в поле цена значения типа: 1000..3000

Строка делилась и объявления искались по цене от 1000 до 3000

Искал документацию на тему работы со строками в Yii и делением строки, но не нашел

Посредством PHP пытался сделать, но выдает ошибки

Код: Выделить всё
if ($this->price) {
            
$data->explode("..", params[':price']);
            
$criteria->addCondition($this->getTableAlias() . '.price >= :data[0] && .price <= :data[1]' ); 
            
$criteria->params[':price'] = $this->price;
        }  


Можете подсказать что не так делаю?
propawn
Незнакомец
 
Сообщения: 12
Зарегистрирован: 26 мар 2016, 13:20
Очки репутации: 0

Re: Редактирование списка объявлений в админке!

Сообщение Xpycm » 12 апр 2016, 12:37

Код: Выделить всё
$criteria->addCondition($this->getTableAlias() . '.price >= :data[0] && .price <= :data[1]' );  

Здесь мало того, что интерпрератор PHP выдаст ошибку, так ещё и ошибка запроса mySQL будет

И это:
Код: Выделить всё
$data->explode("..", params[':price']); 

в данном случае PHP совсем не понравится. Или может где-то есть объект $data с методом explode?

Наверное, стоит перед началом программирования ознакомиться с: http://php.net/manual/ru/ и http://www.mysql.ru/docs/

Код: Выделить всё
if ($this->price) {
            $data = explode("..", $this->price);
            $criteria->addCondition($this->getTableAlias() . '.price >= '.$data[0].' AND '.$this->getTableAlias() . '.price <= '.$data[1] ); 
        
} 
Dropbox
Open Real Estate CMS: FAQ | FAQ 2 | FAQ 3
Изображение
Xpycm
Разработчик
Разработчик
 
Сообщения: 1592
Зарегистрирован: 30 дек 2011, 11:06
Откуда: Йошкар-Ола
Очки репутации: 50

Re: Редактирование списка объявлений в админке!

Сообщение propawn » 12 апр 2016, 12:39

Parse error: syntax error, unexpected '[' in C:\Denwer\OpenServer\domains\localhost\protected\modules\apartments\models\Apartment.php on line 482

На эту строку
Код: Выделить всё
$data->explode("..", params[':price']); 
propawn
Незнакомец
 
Сообщения: 12
Зарегистрирован: 26 мар 2016, 13:20
Очки репутации: 0

Re: Редактирование списка объявлений в админке!

Сообщение Xpycm » 12 апр 2016, 12:39

$data = explode("..", $this->price);
Dropbox
Open Real Estate CMS: FAQ | FAQ 2 | FAQ 3
Изображение
Xpycm
Разработчик
Разработчик
 
Сообщения: 1592
Зарегистрирован: 30 дек 2011, 11:06
Откуда: Йошкар-Ола
Очки репутации: 50

Re: Редактирование списка объявлений в админке!

Сообщение propawn » 13 апр 2016, 11:44

Код: Выделить всё
CDbCommand не удалось исполнить SQL-запрос: SQLSTATE[42000]: Syntax error or access violation: 1064 You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near '))' at line 1

Теперь такая ошибка
propawn
Незнакомец
 
Сообщения: 12
Зарегистрирован: 26 мар 2016, 13:20
Очки репутации: 0

Re: Редактирование списка объявлений в админке!

Сообщение Xpycm » 13 апр 2016, 13:23

Судя по всему одна скобка лишняя, или, может, сразу две

Мы можем реализовать вам функцию такого поиска платно. Обращайтесь: https://monoray.ru/contact
Dropbox
Open Real Estate CMS: FAQ | FAQ 2 | FAQ 3
Изображение
Xpycm
Разработчик
Разработчик
 
Сообщения: 1592
Зарегистрирован: 30 дек 2011, 11:06
Откуда: Йошкар-Ола
Очки репутации: 50

След.

Вернуться в Вопросы и помощь по изменениям

Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей и гости: 8

cron