Изменение формы добавления объявления + поиск

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

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

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

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

Изменение формы добавления объявления + поиск

Сообщение gpu89 » 03 окт 2013, 14:06

Всем привет. Дело вот в чём. Нужно для недвижимости конкретного типа добавить выпадающий список и пару текстовых полей в форму добавления объявлений в админке. Все значения будущего выпадающего списка хранятся в отдельной таблице в бд, в таблице же appartments добавлено поле, хранящее id того или иного значения из этого списка. Нужно чтобы из новой таблицы формировался выпадающий список, который будет отображаться в форме добавления объявления только если добавляется объявление конкретного типа. Понимаю что объём работ не маленький и не прошу расписывать весь код, прошу только направить меня по нужному пути. Где и примерно как формируется форма добавления объявления и где задавать условия, при которых выводятся/не выводятся те или иные поля? Как (где) сделать выпадающий список из новой таблицы в бд? И последнее, не менее важное - где формируется фильтр (форма поиска объявления на сайте)? Так как в этот фильтр нужно будет добавить тот самый выпадающий список, чтобы он участвовал в поиске, а некоторые другие поля - отключить (для конкретного типа объявлений). Просьба подсказать хотя бы примерно, дело срочное. Заранее спасибо.
gpu89
Незнакомец
 
Сообщения: 10
Зарегистрирован: 03 окт 2013, 13:01
Очки репутации: 0

Re: Изменение формы добавления объявления + поиск

Сообщение Foton » 03 окт 2013, 14:51

Это довольно объёмная доработка, объяснять такое по трудоёмкости не сильно меньше, чем сделать :) Можете обратиться через форму контактов и мы дадим оценку такой доработки.
Foton
Разработчик
Разработчик
 
Сообщения: 431
Зарегистрирован: 26 янв 2012, 14:58
Очки репутации: 8

Re: Изменение формы добавления объявления + поиск

Сообщение gpu89 » 03 окт 2013, 17:01

Скажите хотя бы как сделать поле, присутствующее в форме добавления объявлений разного типа, обязательным "тут", но необязательным "там". Если не трудно.
gpu89
Незнакомец
 
Сообщения: 10
Зарегистрирован: 03 окт 2013, 13:01
Очки репутации: 0

Re: Изменение формы добавления объявления + поиск

Сообщение Foton » 04 окт 2013, 10:07

Ну тут есть два варианта, либо использовать для разных типов разные сценарии валидации, либо создать для этого поля собственный валидатор, что, на мой взгляд, проще.
Про валидаторы в Yii можно почитать тут
Foton
Разработчик
Разработчик
 
Сообщения: 431
Зарегистрирован: 26 янв 2012, 14:58
Очки репутации: 8

Re: Изменение формы добавления объявления + поиск

Сообщение gpu89 » 04 окт 2013, 10:57

Благодарю покорно =))) Последний вопрос. Как организовать выпадающий список? Точнее где примерно копаться. Как я уже писал выше, под сам список создана отдельная таблица в бд, которая хранит как значения, так и id каждого элемента списка (пусть для примера это будут города - Москва id 1, Питер id 2 и так далее). В таблице appartments добавлено поле, которое должно содержать id "города", к которому относится объявление. Список "городов" нужно вывести в форму добавления объявления. При добавлении объявления id выбранного "города" идёт в appartments, но выбирать-то надо не из списка айдишников, а из списка значений (названий "городов" из отдельной таблицы). Мне бы примерно понять принцип - дальше уже разберусь.
gpu89
Незнакомец
 
Сообщения: 10
Зарегистрирован: 03 окт 2013, 13:01
Очки репутации: 0

Re: Изменение формы добавления объявления + поиск

Сообщение Foton » 04 окт 2013, 12:03

Попробуйте посомтреть вот тут
Foton
Разработчик
Разработчик
 
Сообщения: 431
Зарегистрирован: 26 янв 2012, 14:58
Очки репутации: 8

Re: Изменение формы добавления объявления + поиск

Сообщение gpu89 » 04 окт 2013, 12:23

А на русском случайно нету? :(
gpu89
Незнакомец
 
Сообщения: 10
Зарегистрирован: 03 окт 2013, 13:01
Очки репутации: 0

Re: Изменение формы добавления объявления + поиск

Сообщение Xpycm » 04 окт 2013, 14:42

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

Re: Изменение формы добавления объявления + поиск

Сообщение gpu89 » 14 окт 2013, 13:36

Всё получилось, спасибо. Остался лишь вопрос с поиском. Вот я добавил новый тип недвижимости, с помощью условий if-else подкорректировал для него форму добавления объявлений (многие поля убрал, пару-тройку добавил). Всё нормально, объявление добавляется, все поля идут в базу и информация корректно отображается на странице объявления, но в списке объявлений они (объявления нового типа) не отображаются. Возможно где-то в модели есть список параметров, которые должны быть заполнены, чтобы объявление отображалось при поиске? А так как ряд полей убраны из формы добавления, то при создании объявления они не заполняются, а они, видимо, нужны, чтобы объявление искалось... Где это можно изменить? Где находится список необходимых для поиска параметров или в чём ещё может быть проблема? Спасибо.
gpu89
Незнакомец
 
Сообщения: 10
Зарегистрирован: 03 окт 2013, 13:01
Очки репутации: 0

Re: Изменение формы добавления объявления + поиск

Сообщение Koduc » 15 окт 2013, 13:41

Посмотрите в /protected/modules/apartments/helpers/apartmentsHelper.php - там формируются доп.условия.
Можете вставить что-то типа
Код: Выделить всё
echo "<pre>";
print_r($criteria);
echo "</pre>";
exit;
 

чтобы посомтреть, что там получается условиях

При поиске форммируются условия в /protected/modules/quicksearch/controllers/MainController.php, метод actionMainsearch. Там тож формируется $criteria, которая в конечном итоге передается в файл, что я указал выше
-- Меньше знаешь - крепче спишь --
Аватара пользователя
Koduc
Ведущий разработчик
Ведущий разработчик
 
Сообщения: 902
Зарегистрирован: 28 дек 2011, 09:11
Очки репутации: 20


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

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

Сейчас этот форум просматривают: Google [Bot] и гости: 19