Главная » PHP » Как добавить комментарии к каждому сообщению на форуме в yii, используя модуль форума bbii и модуль комментариев
Как добавить комментарии к каждому сообщению на форуме в yii, используя модуль форума bbii и модуль комментариев
Я использую Yii форум bbii модуль и работает нормально. Но теперь я хочу добавить комментарии-модуль поэтому каждое сообщение на форуме может быть отдельно прокомментировано.
В начале это может выглядеть так:
Я следовал инструкциям, что это Вот, но я не могу заставить его работать 🙁
И почему мне даже нужно включить этот файл, если я хочу добавить просто комментарий?
Когда я добавил тот же виджет на страницу пользователя (только для тестирования) — я получил «Этот элемент не может быть комментируем», и это нормально, потому что, вероятно, у меня нет правильной конфигурации в main.php.
Разница между виджетом в представлении модели пользователя и представлении форума заключается в данных, передаваемых в нем.
Вот:
public function actionPostComment()
{
if(isset($_POST['Comment']) && Yii::app()->request->isAjaxRequest)
{
$comment = new Comment();
$comment->attributes = $_POST['Comment'];
var_dump($comment);
var_dump вернул этот при попытке оставить комментарий на форуме, и Вот на странице просмотра пользователя.
И, возможно, даже невозможно объединить их в модули? Я действительно новичок в Yii.
include (BbiiPost.php): не удалось открыть поток: нет такого файла или каталога
Вы сказали, что Bbii работает с Yii, и он сломался, когда попытался добавить комментарии.
Ссылки на ваши файлы var_dump не работают, но я пытался их прочитать;)
Похоже, что модуль комментариев вмешивается в путь POST, поэтому, когда поступает отправка формы, он отличается от корневого, что сбивает с толку автозагрузчик YiiBase.
Вы можете попробовать явно добавить путь к BbiiPost.php к пути поиска автозагрузчика или найти, где include("BbiiPost.php") линия и меняя ее на абсолютный путь.
Другая возможность состоит в том, что на странице форума, на которой вы находитесь, есть ссылки для добавления комментариев, но маршрутизация страницы не была взята из маршрута. Таким образом, возможно, что ссылка POST на комментарии на самом деле находится в / forum / 123 / comment / add, а не просто / comment / add. Поэтому, когда форма отправлена, она пытается комментировать / добавить контроллер / действие, но обнаруживает, что она находится в / forum / view, и запутывается в путях к включаемым файлам.
В целом я обнаружил, что инструкции на сайте Yii (v1) [v2 docs намного лучше] для этих модулей в лучшем случае ненадежны. Довольно часто ссылка на исходный код загрузки на странице указывает на старую ошибочную версию кода, поскольку проект обычно перемещался куда-то еще. Как правило, вам нужно иметь довольно хорошие знания PHP / Yii для отладки этих пользовательских модулей и их работы.
Я использую Yii форум bbii модуль и работает нормально. Но теперь я хочу добавить комментарии-модуль поэтому каждое сообщение на форуме может быть отдельно прокомментировано.
В начале это может выглядеть так:
Я следовал инструкциям, что это Вот, но я не могу заставить его работать 🙁
И почему мне даже нужно включить этот файл, если я хочу добавить просто комментарий?
Когда я добавил тот же виджет на страницу пользователя (только для тестирования) — я получил «Этот элемент не может быть комментируем», и это нормально, потому что, вероятно, у меня нет правильной конфигурации в main.php.
Разница между виджетом в представлении модели пользователя и представлении форума заключается в данных, передаваемых в нем.
Вот:
var_dump вернул этот при попытке оставить комментарий на форуме, и Вот на странице просмотра пользователя.
И, возможно, даже невозможно объединить их в модули? Я действительно новичок в Yii.
Обновлено:
В основном то, что я сделал, это:
и в файле просмотра _post.php добавлено следующее:
а также
var_dump($data)
дает этот (когда это вызывается в контроллере, где сообщение восстанавливается).Решение
Сообщение об ошибке было дано здесь:
Вы сказали, что Bbii работает с Yii, и он сломался, когда попытался добавить комментарии.
Ссылки на ваши файлы var_dump не работают, но я пытался их прочитать;)
Похоже, что модуль комментариев вмешивается в путь POST, поэтому, когда поступает отправка формы, он отличается от корневого, что сбивает с толку автозагрузчик YiiBase.
Вы можете попробовать явно добавить путь к BbiiPost.php к пути поиска автозагрузчика или найти, где
include("BbiiPost.php")
линия и меняя ее на абсолютный путь.Другая возможность состоит в том, что на странице форума, на которой вы находитесь, есть ссылки для добавления комментариев, но маршрутизация страницы не была взята из маршрута. Таким образом, возможно, что ссылка POST на комментарии на самом деле находится в / forum / 123 / comment / add, а не просто / comment / add. Поэтому, когда форма отправлена, она пытается комментировать / добавить контроллер / действие, но обнаруживает, что она находится в / forum / view, и запутывается в путях к включаемым файлам.
В целом я обнаружил, что инструкции на сайте Yii (v1) [v2 docs намного лучше] для этих модулей в лучшем случае ненадежны. Довольно часто ссылка на исходный код загрузки на странице указывает на старую ошибочную версию кода, поскольку проект обычно перемещался куда-то еще. Как правило, вам нужно иметь довольно хорошие знания PHP / Yii для отладки этих пользовательских модулей и их работы.
Другие решения
Других решений пока нет …