Варианты
1. настроить сфинкс на xmlpipe, сгенерировав пыхом нужные данные
2. сделать хранимку в СУБД и дергать ее из сфинкса
3. изменить структуру БД и хранить для каждой категории весь путь до корневой категории
Опция FollowSymLinks разрешена, что позволяет Apache видеть cим - линки для обслуживания запроса, даже если файл не входит в каталог, содержащий Web-файлы.
В вашем случае можно попробывать разнести логику по поведениям, либо просто сделать базовый класс модели User (в котором прописываете правила и поведение для всех пользователей) и наследоваться от него типа AdminUser extends User, Moderator extends User и тд
Можете даже фабрику сделать, чтобы например по определенному полю в бд инстанцировалась нужная модель.
Одна из возможных проблем: Yii лочит файл сессии. Соответственно пока php ее не отпустит другие запросы не возможны.
Перед долгим запросом делайте Yii::app()->session->close(), после выполнения Yii::app()->session->open().
А вообще лучше долгие запросы отправлять в job сервера, для асинхронной работы.
Для чтения (подавляющее большинство операций при нагрузках) я редко использвую AR, да это и не очень удобно, потому как вывод идет либо сразу в шаблонизатор, либо в json. Использовать в этом случае внешних ключей (соответственно join) это фейл.
А вот при добавлении/изменении очень удобно через AR проводить валидацию.
Ответ написан
Комментировать
Комментировать
Оценили как «Нравится»
Войдите на сайт
Чтобы задать вопрос и получить на него квалифицированный ответ.