Cake-PHP.ru
Форум программистов CakePHP
(на сайт)
Watched Topics
FAQ
Поиск
Пользователи
Группы
Регистрация
Профиль
Войти и проверить личные сообщения
Вход
Список форумов Cake-PHP.ru
->
Общий
Ответить
Имя
Тема
Сообщение
Смайлики
Дополнительные смайлики
Цвет шрифта:
По умолчанию
Тёмно-красный
Красный
Оранжевый
Коричневый
Жёлтый
Зелёный
Оливковый
Голубой
Синий
Тёмно-синий
Индиго
Фиолетовый
Белый
Чёрный
Размер шрифта:
Размер шрифта
Очень маленький
Маленький
Обычный
Большой
Огромный
Закрыть теги
[quote="Alexander"]Подскажите, как правильно организовать поиск? У меня только одна идея, подгружать можели и делать поиск, что-то вроде $this->loadModel('Model1'); $this->Model1->... ... $this->loadModel('Model2'); $this->Model2->... ... Но здесь другой вопрос, как организовать поиск по типу 'WHERE text LIKE %exp%' ?[/quote]
Настройки
HTML
ВЫКЛЮЧЕН
BBCode
ВКЛЮЧЕН
Смайлики
ВКЛЮЧЕНЫ
Отключить в этом сообщении BBCode
Отключить в этом сообщении смайлики
Если у вас плохое зрение или вы не можете прочесть этот код по какой-то другой причине, то обратитесь за помощью к
Администратору
.
Код подтверждения: *
Введите код в точности так, как вы его видите. Код является регистро-зависимым, а символ нуля имеет косую линию внутри цифры.
Часовой пояс: GMT + 3
Перейти:
Выберите форум
CakePHP Форум
----------------
Общий
Установка и настройка
Творчество
Вопросы и пожелания
Комментарии к главам руководства по CakePHP 1.1
Обзор темы
Автор
Сообщение
Vlad
Добавлено: 06 Мар 2008 21:56:13
Заголовок сообщения:
http://groups.google.com/group/cake-php/msg/2448e3291953aec8
Вот полезная ссылка. Однако если в одной из моделей возникают "LEFT JOIN". Начинаются небольшие непонятки ибо в запросе уже будут фигурировать как Model1 так и Ассоциируемая с ней Model2
(я говорю о ссылке приведенной мною)
И, похоже, в примере, который привёл КРОТОВ. Если есть ассоциации, то запрос
$condition = array('or' => array(
array('Post.body' => 'LIKE %exp%'),
array('Post.title' => 'LIKE %exp%'),
));
$results = $this->Post->findAll($conditions);
Приводит к ошибке:
SELECT `Post`... FROM `posts` AS `Post` LEFT JOIN `answers` AS `Answer` ON (`Answer`.`post_id` = `Post`.`id`) WHERE body LIKE '%exp%' OR ...
1052: Column 'body' in where clause is ambiguous
ЗАвтра, на свежую голову буду ещё ковырять
KPOTOB
Добавлено: 12 Дек 2007 22:21:02
Заголовок сообщения:
Вместо танцев с loadModel
Код:
var $uses = array('Model1', 'Model2');
по поиску
Код:
$condition = array('or' => array(
array('Model1.text' => 'LIKE %exp%'),
array('Model1.text2' => 'LIKE %exp%'),
));
$this->Model1->findAll($condition);
Код живой, только слегка модифицированный
BTW RTFM - в раздели про модели это должно быть
Попути - код поиска лучше в модель перенести сразу
Попути2 - можно сделать behavior для поиска по текстовым полям ))
Alexander
Добавлено: 12 Дек 2007 19:54:43
Заголовок сообщения: Поиск по сайту
Подскажите, как правильно организовать поиск?
У меня только одна идея, подгружать можели и делать поиск, что-то вроде
$this->loadModel('Model1');
$this->Model1->...
...
$this->loadModel('Model2');
$this->Model2->...
...
Но здесь другой вопрос, как организовать поиск по типу 'WHERE text LIKE %exp%' ?
Powered by phpBB © 2001, 2005 phpBB Group
Русская поддержка phpBB
Если ничего интересного не нашли, можно рекламу почитать, а рекламируется у нас сегодня «».