У меня есть модель Элемент с соответствующей таблицей элементами и полями (поле1, поле2 и т. Д.).CakePHP paginate 'virtual' field
У меня есть другая модель, Комментарий, а также его таблица и поля. Одно из полей: item_rating, где пользователи вводят число от 0 до 10, чтобы оценить товар.
Обе модели связаны как ПунктhasManyКомментарий и КомментарийbelongsToItem.
Когда постраничный в Item модели в представлении, я хотел бы добавить поле item_rating вместе со своими полями, так что пользователи могут видеть среднюю оценку данного пункта и иметь возможность сортировать item_rating , кроме всех других полей, которые принадлежат непосредственно . Пункт.
Чтобы сделать это, я полагаю, мне нужно 2 вещи:
- Уметь создать поле item_rating на лету со средним всех рейтингов
- Уметь добавить это поле для разбивки на страницы, чтобы пользователи могли его видеть и сортировать по нему
Возможно ли это? Может ли кто-нибудь указать мне правильное направление, как это сделать? Или я должен просто добавить realitem_rating введите в мой список таблицу и обновите средний каждый раз, когда новый рейтинг добавляется пользователем?
Большое спасибо!
эй спасибо за ссылку. Тем не менее, я получаю типичную ошибку «заголовки, уже отправленные .... aggregate_cache.php». Это файл в примере, поэтому я не знаю, может ли быть что-то не так, я использую его, как он есть. Вы знаете, что может быть неправильным? Или у вас есть альтернативное поведение или метод? –
Хорошо, я просто исправил это, возникла проблема с копированием кода непосредственно с веб-страницы. Я скопировал его сначала в блокнот, а затем в мой редактор, и ошибка исчезла. Тем не менее, я не могу заставить его делать то, что должно делать ... –
Это не мой код, и я не знаю деталей. См. Мой пересмотренный ответ для получения более подробной информации. –