routing.php не находит путь

Делаю плагин "cartsmanager" для Shop Script:

После добавления в файл shop/plugins/cartsmanager/lib/config/routing.php:

<?php
return [
    'cartsmanager/addtocart/' => 'frontend/ajax'
];

Путь не находит:

$wa->getUrl('shop/frontend/ajax', ['plugin' => 'cartsmanager'])

Выдает: 

/my/

shop/plugins/cartsmanager/lib/actions/frontend/shopCartsmanagerPluginFrontendAjax.controller.php
<?php
class shopCartsmanagerPluginFrontendAjaxController extends waJsonController
{
	public function execute()
    {		
        $this->response = array(
            'valA' => 'value first',
            'valB' => 'velue second',
        );
    }
 
}

JS

async function addProductToCart(url = {$wa->getUrl('shop/frontend/ajax', ['plugin' => 'cartsmanager'])}, data = {}) {
  const response = await fetch(url, {
    method: "POST",
    body: JSON.stringify(data),
  });
  return response.json();
}

При запросе выдает ошибку 404

10 ответов

  • 1
    waResearchLab 29 мая 2024 23:39 #

    $wa->getUrl('shop/frontend/ajax', ['plugin' => 'cartsmanager'])

    Вроде параметров маловато... Гляньте метод getUrl в документации и, например, вызов в штатном плагине yandexmarket

    • +1
      Katvizkiy Stanislav Katvizkiy Stanislav 29 мая 2024 23:42 #

      Спасибо. Несколько раз пересмотрел и перечитал. Все ок вроде. Но это только - вроде. 

      Когда прямой путь пишу, все равно не находит

      • +1
        waResearchLab waResearchLab 29 мая 2024 23:49 #

        Кеш сбрасывали? )

        Гляньте в плагине ЯМы от WA

        wa-apps/shop/plugins/yandexmarket/lib/actions/backend/shopYandexmarketPluginBackend.actions.php:382

        • +1
          Katvizkiy Stanislav Katvizkiy Stanislav 29 мая 2024 23:49 #

          Да, конечно. И режим разработчика включён. 

          • +1
            waResearchLab waResearchLab 29 мая 2024 23:54 #

            Я не большой спец в этой части, и когда требуется сам всегда в документации и примерах копаюсь, но на примере плагина ЯМы мне кажется не хватает как минимум в параметрах элемента action.  Но могу и ошибаться конечно.

            • +1
              Katvizkiy Stanislav Katvizkiy Stanislav 29 мая 2024 23:58 #

              У меня реализация через контроллер. 

              • +1
                waResearchLab waResearchLab 29 мая 2024 23:59 #

                Это не важно. Что action, что controller - все едино

                • +1
                  Katvizkiy Stanislav Katvizkiy Stanislav 29 мая 2024 23:59 #

                  Прошу прощения, я тогда не совсем понял, где не хватает параметрам action. 

                  • +1
                    waResearchLab waResearchLab 30 мая 2024 00:00 #

                    В параметрах getUrl.  Гляньте как в штатном плагине ЯМы. Ссылку на строку выше приводил

Эта тема в архиве. Добавление комментариев к ней отключено.