Ruby Rail First Step: Difference between revisions
		
		
		
		
		
		Jump to navigation
		Jump to search
		
				
		
		
	
No edit summary  | 
				|||
| Line 47: | Line 47: | ||
                     :length => { :minimum => 5 }  |                      :length => { :minimum => 5 }  | ||
end  | end  | ||
</pre>  | |||
===Create an Xml List===  | |||
* Modify the sectioni def index of the file app/controllers/posts_controller.rb  | |||
<pre>def index  | |||
  @posts = Post.all  | |||
  respond_to do |format|  | |||
    format.html # index.html.erb  | |||
    format.xml  { render :xml => @posts }  | |||
  end  | |||
end  | |||
</pre>  | |||
* Now try [http://localhost:3000/posts.xml http://localhost:3000/posts.xml]  | |||
Revision as of 23:41, 14 November 2014
- Your first application with MySQL
 
Create the Application
rails new firstapp -d mysql
- Move into the application directory
 
cd firstapp
- If you setup MySQL or Postgres with a username/password, modify the
 - config/database.yml file to contain the username/password that you specified
 
- Create the database
 
rake db:create
- Start the server
 
rails server
- Visite the web site
 
- change the default page
 
Add the following into config/routes.rb
root :to => "home#index"
Start to Work with Resources
Generate a resource (Post)
rails generate scaffold Post name:string title:string content:text
Creating and Customizing Rails Generators & Templates
Create Tables (posts)
rake db:migrate
- To create in production
 
rake db:migrate RAILS_ENV=production.
Add a link into the home page
- Add Post Page in the index file app/view/home/index.html.erb
 
<%= link_to "My Blog", posts_path %>
Add validation
- Add validation into app/modles/post.rb
 
class Post < ActiveRecord::Base
  validates :name,  :presence => true
  validates :title, :presence => true,
                    :length => { :minimum => 5 }
end
Create an Xml List
- Modify the sectioni def index of the file app/controllers/posts_controller.rb
 
def index
  @posts = Post.all
 
  respond_to do |format|
    format.html # index.html.erb
    format.xml  { render :xml => @posts }
  end
end
- Now try http://localhost:3000/posts.xml