SlideShare una empresa de Scribd logo
1 de 8
Guia Para la Creacion de Un Blog con RoR
Creamos un nuevo proyecto
1. rails new blog
Ingresamos al proyecto creado
2. cd blog
Iniciamos el servidor
3. rails server # 0.0.0.0:3000 en el navegador
Para conseguir que Rails diga "Hola" en el navegador, necesitas crear como mínimo
un controlador y una vista.
4. rails generate controller welcome index
Se creara una un controlador y una vista. Ingresa la vista para agregar una
etiqueta html welcome/index.html
5. <h1>Hola mundo </h1> #se puede acceder a http://0.0.0.0:3000/welcome/index.html
Ahora crearemos un Post al Blog mediante la definicion de los metodos crud,por lo
que primero debemos configurar la ruta de los Post en config/routes.rb.
6. get "posts/new" # no se puede acceder a http://0.0.0.0:3000/post/new.html
Luego creamos el controlador y la vista de la ruta Post
7. rails g controller posts
Ingresamos al controlador de Post en la ruta app/controller/posts_controller.rb
para definir el metodo new
8. def new
@post = Post.new
end
Ahora debemos crear la vista new dentro del layout post para que por medio del
metodo new declarado post_controller pueda mostrar la vista ejemplo:
post/new.html.erb
9. <h1>Nuevo Post</h1> #http://0.0.0.0:3000/post/new.html
Ahora crearemos nuestro primer formulario en la vista new dentro del layout post
utilizando el constructor de formularios form_for y definiendo la accion create
# <%= form_for :post do |f| %>
10.<%= form_for :post, :url => { :action => :create } do |f| %>
<p>
<%= f.label :title %><br>
<%= f.text_field :title %>
</p>
<p>
<%= f.label :text %><br>
<%= f.text_area :text %>
</p>
<p>
<%= f.submit %>
</p>
<% end %>
Luego agregamos la accion create en config/routes.rb justo debajo de la anterior
ruta.
11. post "posts" => "posts#create"
Luego debemos definir la accion create en post_controller como metodo para que
pueda funcionar y salvar los datos en la base de datos.
12. def create
end
Luego de enviar los parametros desde la vista en donde esta el formulario en
post/new.html.erb, rails los recibe como parametros por medido del metodo propio
render, por lo que es importante referenciarlos desde el metodos create en
posts_controller
13. def create
render :text => params[:post].inspect
end
Si tratamos de ingresar una informacion al formulario, veremos error, puesto que
veremos los parametros que llegan pero que no se estan guardando, por lo que
tenemos que crear el modelo de post para que pueda crear la base de datos,
definiendo los mismos parametros enviados en el formulario como campos al modelo
post.
14. rails generate model Post title:string text:text
Ahora para poder salvar los datos cambiando el metodo create, definiendo
@post.save, encargado de guardar el modelo en la base de datos.
15. def create
@post = Post.new(params[:post])
@post.save
redirect_to :action => :show, :id => @post.id
end
Ahora debemos mostramos los articulos, defininiendo el metodo show por los que
debemos la ruta para el nuevo metodos de post_controller en config/routes.rb
16. get "posts/:id" => "posts#show"
Luego podemos utlizamos la funcion Post.find para encontrar el id del articulo que
se va a mostrar dentro del metodo show en post_controller
17.def show
@post = Post.find(params[:id])
end
Luego debemos crear la vista de show dentro del layout post show.html.erb
18.<p>
<strong>Title:</strong>
<%= @post.title %>
</p>
<p>
<strong>Text:</strong>
<%= @post.text %>
</p>
Ahora debemos listas los productos que vamos agregando por lo que es importante
definir la ruta en donde se van a mostrar todos los articulos.
19.get "posts" => "posts#index"
por lo que es importante definir el metodo index en el controlador post_controller
20. def index
@posts = Post.all
end
Ahora debemos crear la vista en app/views/posts/index.html.erb
21. <h1>Listing posts</h1>
<table>
<tr>
<th>Title</th>
<th>Text</th>
</tr>
<% @posts.each do |post| %>
<tr>
<td><%= post.title %></td>
<td><%= post.text %></td>
</tr>
<% end %>
</table>
Ahora agreguemos los enlaces para redireccionarnos a las vista index de post
22. <%= link_to 'New post', :action => :new %>
Luego agregamos los enlaces para redireccionarnos a la vista new y show de post
23. <%= link_to 'Back', :action => :index %>
Ahora nos dirigimos al modelo de post en app/models/post.rb para agregar los
accesos a los campos para que estos puedan ser modificados.
24.attr_accessor:text, :title
Es importante aregar las validaciones al modelo, para que por lo menos tengan 5
caracteres de longitud en app/models/post.rb.
25. validates :title, :presence => true,
:length => { :minimum => 5 }
ahora realizamos una validacion de para redireccionar a una instancia post que
recibira del formulario en new
26. def create
@post = Post.new(params[:post])
if @post.save
redirect_to :action => :show, :id => @post.id
else
render 'new'
end
end
Impulsando el inicio de una aplicacion en RoR
Creamos un nuevo proyecto
1. rails new store
Ingresamos al proyecto creado
2. cd store
Iniciamos el servidor
3. rails server # 0.0.0.0:3000 en el navegador
Para conseguir que Rails diga "Hola" en el navegador, necesitas crear como mínimo
un controlador y una vista.
4. rails g scaffold article name:string precio:decimal categoria:string
Aplicamos la migración a la base de datos ejecutamos el siguiente comando
5. rake db:migrate
Iniciamos el servidor
6. rails server
Guia basica de ruby on rails

Más contenido relacionado

Similar a Guia basica de ruby on rails

Similar a Guia basica de ruby on rails (20)

Mvc
MvcMvc
Mvc
 
Conociendo el Patron Modelo Vista Controlador
Conociendo el Patron   Modelo Vista ControladorConociendo el Patron   Modelo Vista Controlador
Conociendo el Patron Modelo Vista Controlador
 
APIREST LARAVEL Y PHP.pptx
APIREST LARAVEL Y PHP.pptxAPIREST LARAVEL Y PHP.pptx
APIREST LARAVEL Y PHP.pptx
 
Guia4 html
Guia4 htmlGuia4 html
Guia4 html
 
Guía clase #3 vwd
Guía clase #3 vwdGuía clase #3 vwd
Guía clase #3 vwd
 
Funciones
FuncionesFunciones
Funciones
 
Jquery Hmvc
Jquery HmvcJquery Hmvc
Jquery Hmvc
 
Evolution INTech - Acceso a bases de datos con Minimal APIs de .NET 6.pptx
Evolution INTech - Acceso a bases de datos con Minimal APIs de .NET 6.pptxEvolution INTech - Acceso a bases de datos con Minimal APIs de .NET 6.pptx
Evolution INTech - Acceso a bases de datos con Minimal APIs de .NET 6.pptx
 
Taller desarrollo web
Taller  desarrollo webTaller  desarrollo web
Taller desarrollo web
 
Linq to sql 5
Linq to sql 5Linq to sql 5
Linq to sql 5
 
Linq to sql 7
Linq to sql 7Linq to sql 7
Linq to sql 7
 
Corp. In. Tec. S.A. - Capacitaciones en Informática - Programación con CodeIg...
Corp. In. Tec. S.A. - Capacitaciones en Informática - Programación con CodeIg...Corp. In. Tec. S.A. - Capacitaciones en Informática - Programación con CodeIg...
Corp. In. Tec. S.A. - Capacitaciones en Informática - Programación con CodeIg...
 
WPF Series - 01
WPF Series - 01WPF Series - 01
WPF Series - 01
 
Aplicación abc. asp net mvc 3
Aplicación abc. asp net mvc 3Aplicación abc. asp net mvc 3
Aplicación abc. asp net mvc 3
 
Instructivo themewordpress
Instructivo themewordpressInstructivo themewordpress
Instructivo themewordpress
 
Node js mongo crud tareas
Node js mongo crud tareasNode js mongo crud tareas
Node js mongo crud tareas
 
Tutorial net beans
Tutorial net beansTutorial net beans
Tutorial net beans
 
ASP.NET MVC Core
ASP.NET MVC CoreASP.NET MVC Core
ASP.NET MVC Core
 
ASP.NET MVC Core by Eduard Tomàs
ASP.NET MVC Core by Eduard TomàsASP.NET MVC Core by Eduard Tomàs
ASP.NET MVC Core by Eduard Tomàs
 
Ebook tutorialspringbootheroku
Ebook tutorialspringbootherokuEbook tutorialspringbootheroku
Ebook tutorialspringbootheroku
 

Guia basica de ruby on rails

  • 1. Guia Para la Creacion de Un Blog con RoR Creamos un nuevo proyecto 1. rails new blog Ingresamos al proyecto creado 2. cd blog Iniciamos el servidor 3. rails server # 0.0.0.0:3000 en el navegador Para conseguir que Rails diga "Hola" en el navegador, necesitas crear como mínimo un controlador y una vista. 4. rails generate controller welcome index Se creara una un controlador y una vista. Ingresa la vista para agregar una etiqueta html welcome/index.html 5. <h1>Hola mundo </h1> #se puede acceder a http://0.0.0.0:3000/welcome/index.html Ahora crearemos un Post al Blog mediante la definicion de los metodos crud,por lo que primero debemos configurar la ruta de los Post en config/routes.rb. 6. get "posts/new" # no se puede acceder a http://0.0.0.0:3000/post/new.html Luego creamos el controlador y la vista de la ruta Post 7. rails g controller posts Ingresamos al controlador de Post en la ruta app/controller/posts_controller.rb para definir el metodo new 8. def new @post = Post.new end Ahora debemos crear la vista new dentro del layout post para que por medio del metodo new declarado post_controller pueda mostrar la vista ejemplo: post/new.html.erb 9. <h1>Nuevo Post</h1> #http://0.0.0.0:3000/post/new.html Ahora crearemos nuestro primer formulario en la vista new dentro del layout post utilizando el constructor de formularios form_for y definiendo la accion create
  • 2. # <%= form_for :post do |f| %> 10.<%= form_for :post, :url => { :action => :create } do |f| %> <p> <%= f.label :title %><br> <%= f.text_field :title %> </p> <p> <%= f.label :text %><br> <%= f.text_area :text %> </p> <p> <%= f.submit %> </p> <% end %> Luego agregamos la accion create en config/routes.rb justo debajo de la anterior ruta. 11. post "posts" => "posts#create" Luego debemos definir la accion create en post_controller como metodo para que pueda funcionar y salvar los datos en la base de datos. 12. def create end Luego de enviar los parametros desde la vista en donde esta el formulario en post/new.html.erb, rails los recibe como parametros por medido del metodo propio render, por lo que es importante referenciarlos desde el metodos create en posts_controller 13. def create render :text => params[:post].inspect end Si tratamos de ingresar una informacion al formulario, veremos error, puesto que veremos los parametros que llegan pero que no se estan guardando, por lo que tenemos que crear el modelo de post para que pueda crear la base de datos, definiendo los mismos parametros enviados en el formulario como campos al modelo post. 14. rails generate model Post title:string text:text Ahora para poder salvar los datos cambiando el metodo create, definiendo @post.save, encargado de guardar el modelo en la base de datos.
  • 3. 15. def create @post = Post.new(params[:post]) @post.save redirect_to :action => :show, :id => @post.id end Ahora debemos mostramos los articulos, defininiendo el metodo show por los que debemos la ruta para el nuevo metodos de post_controller en config/routes.rb 16. get "posts/:id" => "posts#show" Luego podemos utlizamos la funcion Post.find para encontrar el id del articulo que se va a mostrar dentro del metodo show en post_controller 17.def show @post = Post.find(params[:id]) end Luego debemos crear la vista de show dentro del layout post show.html.erb 18.<p> <strong>Title:</strong> <%= @post.title %> </p> <p> <strong>Text:</strong> <%= @post.text %> </p> Ahora debemos listas los productos que vamos agregando por lo que es importante definir la ruta en donde se van a mostrar todos los articulos. 19.get "posts" => "posts#index" por lo que es importante definir el metodo index en el controlador post_controller 20. def index @posts = Post.all end Ahora debemos crear la vista en app/views/posts/index.html.erb 21. <h1>Listing posts</h1> <table> <tr> <th>Title</th> <th>Text</th> </tr> <% @posts.each do |post| %>
  • 4. <tr> <td><%= post.title %></td> <td><%= post.text %></td> </tr> <% end %> </table> Ahora agreguemos los enlaces para redireccionarnos a las vista index de post 22. <%= link_to 'New post', :action => :new %> Luego agregamos los enlaces para redireccionarnos a la vista new y show de post 23. <%= link_to 'Back', :action => :index %> Ahora nos dirigimos al modelo de post en app/models/post.rb para agregar los accesos a los campos para que estos puedan ser modificados. 24.attr_accessor:text, :title Es importante aregar las validaciones al modelo, para que por lo menos tengan 5 caracteres de longitud en app/models/post.rb. 25. validates :title, :presence => true, :length => { :minimum => 5 } ahora realizamos una validacion de para redireccionar a una instancia post que recibira del formulario en new 26. def create @post = Post.new(params[:post]) if @post.save redirect_to :action => :show, :id => @post.id else render 'new' end end
  • 5.
  • 6.
  • 7. Impulsando el inicio de una aplicacion en RoR Creamos un nuevo proyecto 1. rails new store Ingresamos al proyecto creado 2. cd store Iniciamos el servidor 3. rails server # 0.0.0.0:3000 en el navegador Para conseguir que Rails diga "Hola" en el navegador, necesitas crear como mínimo un controlador y una vista. 4. rails g scaffold article name:string precio:decimal categoria:string Aplicamos la migración a la base de datos ejecutamos el siguiente comando 5. rake db:migrate Iniciamos el servidor 6. rails server