Documentos de Académico
Documentos de Profesional
Documentos de Cultura
Taller 3 de Ruby On Rails Creando Un Blog Primera Parte
Taller 3 de Ruby On Rails Creando Un Blog Primera Parte
Primera parte
Utilizando RubyMine:
- Ejecutar en modo administrador
- Crear un nuevo proyecto
Recargar http://localhost:3000
Debe aparecer la página "Welcome Aboard" es la primera prueba para una nueva
aplicación Rails.
<h1>Bienvenidos a mi Blog</h1>
Recargar http://localhost:3000
3. Indicarle a Rails donde está la página principal, para esto modficamos config/routes, cu
get "bienvenidos/index"
Recargar http://localhost:3000/bienvenidos/index
get “articulos/new”
end
Para añadir una acción a mano en un controlador, lo único que necesitas es crear un
nuevo método en el controlador. Abre el archivo
app/controllers/articulos_controller.rb y dentro de la clase ArticulosController define
un nuevo método de esta manera:
def new
end
Si recargamos en este punto debe aparecer otro error indicándonos que falta la vista
asociada el método en el controlador
Crear la vista del controlador new , para esto el archivo debería llamarse
articulos/new.html.erb y debe encontrarse dentro de la carpeta app/views de la
aplicación. Para esto dar clic derecho sobre la carpeta artículos, ingresar el nombre
new.html.erb y presionar enter.
<h1>Nueva Publicación</h1>
Recargar http://localhost:3000/articulos/new
<p>
<%= f.label :texto %><br>
<%= f.text_area :texto %>
</p>
<p>
<%= f.submit %>
</p>
<% end %>
Volvemos a recargar
Dentro del bloque para este método, el objeto FormBuilder - representado por f - se
usa para construir dos títulos y dos cajas de texto, una para el título del artículo y otra
para su contenido. Finalmente, la llamada al método submit en el objeto f crea un
botón para enviar el formulario, nombre se puede cambiar escribiendo <%= f.submit
“Guardar” %>
Para que el formulario quede libre para poderlo navegar debemos cambiar la primer
instrucción de la vista por:
<%= form_for :articulo, :url => { :action => :create } do |f| %>
Si recargarmos analizar que ocurre, debe aparecer un error indicandos que falta el método
post “articulos” => “articulos#create”, si refrescamos nos debe aparecer un error de que no
def create
end
end
Ahora es necesario ir creando el modelo para articulo, utilizando el siguiente comando en mod
o terminal en RubyMine:
Una vez generado el modelo es importante revisar las carpetas que por ahora son importantes
$ rake db:migrate
Vamos a dejar el método créate tal como aparece en las siguientes instrucciones:
def create
@articulo = Articulo.new(params[:articulo])
@articulo.save
redirect_to :action => :show, :id => @articulo.id
end
recargamos y analizamos
El error nos indica que falta la acción de mostrar por lo que debemos crear otro controlador así
def show
@articulo = Articulo.find(params[:id])
end
Explicación de la instrucción:
Articulo.find se usa para encontrar el artículo que nos interesa, pasándole el valor params[:id]
Hacemos eso porque Rails pase automáticamente todas las variables de instancia a la vista.
<p>
<strong>Titulo:</strong>
<%= @articulo.titulo %>
</p>
<p>
<strong>Texto:</strong>
<%= @articulo.texto %>
</p>
Navegar por cada controlador y analizar los resultados