¿Cómo pasas una variable con fetch en Rails? Aquí está el flujo de trabajo actual y por qué estoy tratando de hacer eso. Este flujo de trabajo es un paso intermedio para crear una barra de progreso.
Puedo usar el código js a continuación para llamar con éxito a la acción application#percentage_done. Sin embargo, no pasa la identificación del trabajador. Código obtenido de https://developer.mozilla.org/en-US/docs/Web/API/Fetch_API/Using_Fetch
fetch('/application/read_percentage_done') .then(response => response.json()) .then(data => console.log(data));Este es mi intento de usar fetch para pasar la identificación del trabajador. Pero obtiene un error 422. Este código fue adaptado de Use fetch to pass variable in rails
async function postData(url = '', data = {}) { const response = await fetch(url, { method: 'POST', headers: { 'Content-Type': 'application/json' }, body: JSON.stringify(data) }); return response.json(); } postData('/application/percentage_done', { data: '<%= @worker_id %>' }) .then(res=> { console.log(res) });Aquí está el contenido del archivo config/routes.rb.
Rails.application.routes.draw do require 'sidekiq/web' mount Sidekiq::Web => '/sidekiq' root "books#index" post "application/percentage_done" => "application#percentage_done" resources :books end