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

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

Модераторы: 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 violation1064 You have an error in your SQL syntaxcheck 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

След.

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

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

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

cron