Mostrando entradas con la etiqueta ruby on rails. Mostrar todas las entradas
Mostrando entradas con la etiqueta ruby on rails. Mostrar todas las entradas

lunes, 11 de diciembre de 2017

Cambiando base de datos SQLite3 a PostGresql en Ruby On Rails


Iniciando un proyecto con Ruby on Rails se define por defecto la base de datos sqlite3, lo podemos ver en el archivo database.yml dentro de la carpeta config




Para cambiar el gestor de base de datos por postgresql debemos cambiar los campos adapter, database dentro de development, de test y de production, un ejemplo puede ser el siguiente, teniendo como nombre de la app "musicapp"



Ahora debemos instalar la gema de postgresql en el archivo Gemfile, comentamos sqlite3


Ahora en la consola escribimos el comando

$bundle install

Para instalar las gemas



NOTA: Se debe tener las dependencias de postgresql instaladas, en caso de no tenerlas 

First, install the pg gem:


1
gem install pg -- --with-pg-config=/usr/local/bin/pg_config

Make sure you include the pg gem in your Gemfile, and run


1
bundle install


Esta guía funciona para Mac o Linux, Para ver mas sobre esta guía 



Despues de tener postgres correctamente configurado y la gema instalada, debemos crear nuestra base de datos, suponiendo que ya contamos con un archivo de migración previo usamos el comando

$ rake db:setup

en donde creará todas las tablas en la base de datos que hayamos establecido


NOTA: en ocasiones sale el error fe_sendauth: no password supplied
una solución es poner en el archivo database.yml los campos username: y password de nuestro posgres





miércoles, 6 de diciembre de 2017

Iniciando con Ruby on Rails



En la consola escribimos

$rails


donde nos va a decir


Usage:
  rails new APP_PATH [options]

Para iniciar un proyecto escribimos

$rails new proyecto_nuevo

Claro está que primero debemos ubicar la carpeta donde queremos que el proyecto este ubicado

para correr la aplicación

$rails server


Para iniciar, como ejemplo se hará una app de listas de reproducción de música, para esto primero debemos generar un scaffold "El scaffolding es una técnica que se utilizó por primera vez en Ruby on Rails (aunque ya es utilizado hoy día por otros frameworks) que permite crear CRUD, pero en forma mucho más rápida"

el modelo se llamará "track" y los campos serán: title, album y artist, del siguiente modo

NOTA: siempre escribir en singular el nombre del modelo "track"

$rails generate scaffold track title:string album:string artist:string


ahora al correr el servidor, nos aparece un error diciendo que hay una migración pendiente, en la carpeta db>migrate se puede ver el archivo generado, una migración es una forma de trabajar con la base de datos, sin interactuar con codigo SQL, solo codigo ruby

$rake db:migrate


De esta manera la migración es creada, en archivo config>routes podemos ver que creó la linea "resource :tracks"

con $rake routes podemos ver las rutas

Ahora activamos el servidor con

$rails server

y nos envia a localhost:3000

si entramos a localhost:3000/tracks , nos permitirá crear y ver los tracks con los campos, title, album y artist, estas vistas se encuentran en app>views