IIC2143-2020-2 / syllabus

Syllabus de IIC2143 Ingeniería de Software 2020-2
35 stars 10 forks source link

Turbolinks heroku error #240

Closed VicenteElCyrano closed 3 years ago

VicenteElCyrano commented 3 years ago

Hola, cuando utilizo mi app en local va de maravilla, pero al momento de subirla a heroku y al realizar algun metodo (edit, create, delete) estos se aplican pero la página no redirige, y al momento de salirme con un botón manualmente aparece el notice. Como si la parte subrayada no la utilice: image Antes no nos pasaba, ahora si. nefasto

VicenteElCyrano commented 3 years ago

Al pulsar el boton aparece esto en la consola del navegador image

benjavicente commented 3 years ago

Esto puede que sea que falte javascript que se añade por defecto, ve si tienes esto:

<!-- en app/views/layouts/application.html.erb -->
<head>
  <%= javascript_include_tag 'application', 'data-turbolinks-track': 'reload' %>
</head>
VicenteElCyrano commented 3 years ago

Tenemos esa linea en application.html.erb :(

benjavicente commented 3 years ago

Ve si puedes desactivarlos o activarlos. Supuestamente tiene que estar también //= require turbolinks en application.js y la gema gem 'turbolinks', '~> 5'

Baelfire18 commented 3 years ago

Hola @benjavicente nosotros tenemos exactamente el mismo problema con los create, edit, delete. La única forma de solucuionarlo es apagar todos los tubro links de la app? No hay otra forma. ¿Por qué igual se supone tienen utilidad o no?

benjavicente commented 3 years ago

@Baelfire18, supongo que sí. Me imagino que puede ser un problema en el javascript que se compila, algo como que variables globales choquen con las que están en Turbolinks cuando se juntan los archivos (cosa que pasa en production pero no en development). Según su repositorio:

Turbolinks® makes navigating your web application faster. Get the performance benefits of a single-page application without the added complexity of a client-side JavaScript framework. Use HTML to render your views on the server side and link to pages as usual. When you follow a link, Turbolinks automatically fetches the page, swaps in its , and merges its , all without incurring the cost of a full page load.

pd no soy ayudante de este ramo xd

edit: a mi me aparece this.Turbolinks buscandolo con ctrl + F en application-<>.js que se ve en DevTools, Sources (o fuentes) en la carpeta assets, si eso no está, puede que no se está agregando el js de turbolinks.

daleal commented 3 years ago

Hola! Los Turbolinks son una librería de JavaScript que se utiliza para no recargar todo el HTML al momento de cambiar de página, cargando solamente el body y no el resto. La única utilidad que tienen es dar la impresión de que la página se carga más rápido. No debería haber problema con que desactiven Turbolinks. En cualquier caso, creo que el problema efectivamente debe estar en el paso de compilación de assets en producción, pero a simple vista no veo nada erróneo, por lo que debe ser un problema más profundo de lo que se ve (podría incluso no estar relacionado con Turbolinks pero estarse cayendo en esa parte del flujo por un error previo, por ejemplo).