Подключить комментарий к компоненту

#1 20 ноября 2013 в 15:39
Привет всем, подключил систему комментирования к своему компоненту вот по этой статье, но при добавление коммента, пишет Ошибка определения объекта комментирования! #3
Вот запрос от Хрома
Иллюстрация

В чем может быть проблема?
#2 20 ноября 2013 в 22:37
Evanescence, всё просто. Включаем логику и копаем smile
1.Раз ошибка связана с комментами, то ищем в компоненте comments. А именно, текст ошибки не может взяться с ниоткуда. Поэтому открываем lang файл компонента и ищем строку Ошибка определения объекта комментирования!. Находим и узнаем, что эта фраза записана в элементе массива $_LANG['ERR_UNKNOWN_TARGET']
2. Открываем файл frontend.php(а откуда же нам начинать поиски?) и задаем в поиск $_LANG['ERR_UNKNOWN_TARGET'], и увидим, что данная переменная встречается в 4-х местах(195, 208, 220, 224 строки). Если внимательнее посмотрим, то увидим, что #3 указывает на 224 строку. (Спасибо разработчикам, что встроили номера ошибок, чтобы легче было установить ошибку.)
3. Копаемся в коде, чтобы установить в каком случае происходит вывод ошибки.
Ошибка заключается в том, что метод getCommentTarget() модели вашего компонента не возвращает нужные данные. В инструкции вики, по которой вы делаете написано:

Данная функция должна вернуть массив с содержанием title ⇒ заголовок, link ⇒ ссылка на основной материал

Разбираемся с методом. Если трудно, можете дать в студию. Посмотрим.
Разобрал проблему тщательно, чтобы Вы поняли, как нужно действовать в подобных случаях. Чтобы отладить скрипт, прежде всего необходима логика.
Кроме того, в IDE, которым пользуетесь, можно применить поиск по файлам, что-то типа "найти случаи применения"…
#3 21 ноября 2013 в 10:27
Марат, Спасибо за такой подробный ответь, всё получилось но при добавлении комментарий страница не обновляется аяксом, хотя если обновить страницу, коммент есть.
Вы не можете отвечать в этой теме.
Войдите или зарегистрируйтесь, чтобы писать на форуме.
Используя этот сайт, вы соглашаетесь с тем, что мы используем файлы cookie.