избранное по нажатию на кнопку рядом. То как мне передать эти данные (post.id, user.id) в функцию, чтобы в дальнейшем их в БД загрузить например. И где должна быть эта функция? В моем плагине?
https://docs.octobercms.com/3.x/cms/ajax/attributes-api.html
Привет, есть небольшой гайд где можешь подсмотреть как с фронта данные в бек сохранять https://octoclub.ru/d/43
В октобер уже готовый ajax фреймворк. Есть два пути самурая. 1. Data attributes Можно вешать обработчики на ссылки, кнопки, формы и ТД <button type="button" data-request="MyComponent::onMyFunc" data-request-data="productId: {{ product.id}}">в избранное</button> 2. Использовать javascript api oc.request('#target', 'MyComponent::onMyFunc', { data: {} }) В data передать массив данных. Главное условие для обработчика в компоненте. Метод должен начинаться с on. onMyHui onMyGovno Данные можно получить через функцию хелпер input('productId') Но лучше получить через реквест с валидацией и обернуть все это в тру кетч try { $data = request()->validate([ 'productId' => 'required' ], [ 'productId' => 'ты не передал ид товара, поэтому пошел на хуй' ]); return response(['status' => true, 'message' => 'молодец']); } catch(Exception $exception) { return response(['status' => true, 'message' => $exception->getMessage()]); } Хелпер response() вернёт ответ который можно поймать в complete(), success() келбеке oc.request Можно вторым параметром передать код 403 и поймать как ошибку в error() кэлбеке
Обсуждают сегодня