Я новичок в Yii2 и у меня есть не большая проблема с поставленной задачей. Прошу помощи знающих людей.
Суть проблемы.
В базе данных храниться какой-то контент (html верстка). Как вы понимаете данные попадают на страницу. И все бы хорошо, но на некоторых страницах нужно чтобы выводилась форма обратной связи. И вот тут у меня ступор.
Вывести форму в самом представлении с помощью виджета проблем нет. Но не могу подвязать ее к контенту из базы данных.
Задумка была такой:
1) В контенте определяем некую строку для вставки туда формы (некое подобие шорткода на вордпресс) ###myForm###
2) При генерации страницы ищем данный маркер с помощью регулярного выражения для вставки формы.
3) Сама форма лежит отдельным файлом _myform.php, форма сделана с помощью виджета ActiveForm().
А дальше я не знаю что делать. Как передать эту форму в вид. (Может буферизацию нужно заюзать ob_start())
Хотя я думаю в Yii2 должны быть решения такой задачи из коробки.
Можно выдернуть контент с маркером из базы, обработать его через str_replace (контент настоящей формы можно считать из файла и занести в переменную) и уже полноценный контент страницы отдавать в шаблон. Посыл в том, что все эти действия можно сделать в экшене контроллера
если форму не нужно выводить непосредственно в любом месте контента - то можно ограничиться простым условием на присутствие в контенте вашего ###myForm###. и рисовать после контента форму обратной связи при необходимости.
зы. Не совсем уверен, что вариант с str_replace правильно подтянет нужный js который генерит ActiveForm().