Crea una cuenta o inicia sesión

¡Continúa aprendiendo sin ningún costo! Únete y comienza a potenciar tu carrera

Cómo crear un proyecto con RoR

3/33
Recursos

Aportes 13

Preguntas 0

Ordenar por:

¿Quieres ver más aportes, preguntas y respuestas de la comunidad?

APP vs API

Una aplicación de Rails regular usará las vistas de rails (erb o haml) para renderizar las páginas directamente. Es decir, procesará los datos Y los procesará en vistas, respondiendo directamente la solicitud del cliente con una página HTML.

Una API de Rails solo procesará su acción y asumirá que alguien más está haciendo el trabajo de representar la vista para el cliente. Por lo tanto, se espera que una API de Rails devuelva datos en un formato apropiado, como JSON, XML o solo un fragmento de código JS para ejecutar. Es entonces el trabajo de los marcos front-end como AngularJS recibir, analizar y hacer algo con los datos (como actualizar algunos HTML, etc.)

Conceptos extraídos de:

Deberían seguir actualizando los cursos de Rails, están demasiadas desfasadas, Ya estamos en la versión 6 en adelante.

tuve un problema al colocar

rails server

en la linea de codigo 75 del archivo en la ruta de mi computadora

 C:/Ruby24-x64/lib/ruby/gems/2.4.0/gems/bootsnap-1.1.7/lib/bootsnap/load_path_cache/store.rb:75:in `binwrite': "\xDE" `from ASCII-8BIT to UTF-8 (Encoding::UndefinedConversionError)

pero lo solucione simplemente cambiando la linea de codigo en el archivo señalado
de:

File.binwrite(tmp, MessagePack.dump(@data), mode: exclusive_write)

a:

File.binwrite(tmp, MessagePack.dump(@data), mode: exclusive_write, encoding: Encoding::BINARY)

Si quierene encontrar mas informacion acerca de este error el link de la pagina esta aquí

rails server -b 0.0.0.0

para permitir que se asocie rails como dirección general para acceder p.ej.: a un EC2 de AWS

Si te sale el siguiente error al darle rails server : ```js /usr/lib/ruby/gems/3.0.0/gems/bootsnap-1.18.3/lib/bootsnap/load_path_cache/core_ext/kernel_require.rb:17:in `require': cannot load such file -- json (LoadError) from /usr/lib/ruby/gems/3.0.0/gems/bootsnap-1.18.3/lib/bootsnap/load_path_cache/core_ext/kernel_require.rb:17:in `require' ```Debes ir al archivo config/boot.rb y deberas incluir json, asi debe quedar el archivo *recuerda que dependiendo tu version puede cambiar, yo uso la 7.1.3.2 de rails*```js ENV["BUNDLE_GEMFILE"] ||= File.expand_path("../Gemfile", __dir__) require 'json' require "bundler/setup" # Set up gems listed in the Gemfile. require "bootsnap/setup" # Speed up boot time by caching expensive operations. ```

create new api project rails

En Gemfile, en el grupo de :development, :test agregar:

gem 'rspec-rails', '~> 3.5'

También agregar:

group :test do
  gem 'factory_bot_rails', '~> 4.0'
  gem 'shoulda-matchers', '~> 3.1'
  gem 'faker', '~> 1.9'
  gem 'database_cleaner', '~> 1.7'
end

de donde sale esa variable de instancia llamada json?

min 1:15 There is a short version to run all the tests:

rspec

Deben tener un significado diferente que no conozco, pero me funciona igual.

Such a way to start:

Puma caught this error: Error loading the 'sqlite3' Active Record adapter. Missing a gem it depends on? can't activate sqlite3 (~> 1.3.6), already activated sqlite3-1.4.0. Make sure all dependencies are added to Gemfile. (LoadError)

Instalación de gemas:

group :test do
gem ‘factory_bot_rails’, '~> 4.0’
gem ‘shoulda-matchers’, '~> 3.1’
gem ‘faker’, '~> 1.9’
gem ‘database_cleaner’, '~> 1.7’
end

corriendo en un contenedor haciendo binding del puerto 3001:

rails s -b 0.0.0.0 -p 3001

Saludos.
¿Como configurar ruby on rails para trabajar con un servidor remoto? Es decir no trabajar con el http://localhost:3000, un lugar de eso usar: la ip de mi maquina donde esta montado rails x.x.x.x:3000 por ejemplo.