Difference between revisions of "Rails3"
| Line 44: | Line 44: | ||
= Database =  | 
|||
= Using Mysql   | 
  == Using Mysql ==  | 
||
=== Making a new application ===  | 
  === Making a new application ===  | 
||
| Line 78: | Line 79: | ||
    template: template0  | 
      template: template0  | 
||
= Reset database =  | 
  == Reset database ==  | 
||
== Reset database contents ==  | 
  === Reset database contents ===  | 
||
 rake db:reset  | 
   rake db:reset  | 
||
 rake db:migrate  | 
   rake db:migrate  | 
||
| Line 87: | Line 88: | ||
== Recreate database structure ==  | 
  === Recreate database structure ===  | 
||
 rake db:drop  | 
   rake db:drop  | 
||
 rake db:create  | 
   rake db:create  | 
||
| Line 93: | Line 94: | ||
or  | 
  or  | 
||
 rake db:drop db:create db:migrate  | 
   rake db:drop db:create db:migrate  | 
||
== Database field types ==  | 
|||
{|border=1  | 
|||
! Rails Migration Symbol !! MySQL Data Type  | 
|||
|-  | 
|||
| :binary || blob  | 
|||
|-  | 
|||
| :boolean || tinyint(1)  | 
|||
|-  | 
|||
| :date || date  | 
|||
|-  | 
|||
| :datetime || datetime  | 
|||
|-  | 
|||
| :decimal || decimal  | 
|||
|-  | 
|||
| :float || float  | 
|||
|-  | 
|||
| :integer || int(11)  | 
|||
|-  | 
|||
| :string || varchar(255)  | 
|||
|-  | 
|||
| :text || text  | 
|||
|-  | 
|||
| :time || time  | 
|||
|-  | 
|||
| :timestamp || datetime  | 
|||
|}  | 
|||
Revision as of 16:34, 9 July 2012
Developing for Rails3.
Create a new application
Test your installation by making a test application
rails new tetsApp cd testApp rails server
Now check the http://localhost:3000 in your browser.
Nonstop first app
This example is adapted from here
rails new blog cd blog bundle install
gedit config/database.yml rake db:create
rails generate controller home index gedit app/views/home/index.html.erb
Enter the new web page content:
<h1>Hi there!</h1>
Set up the new root page
rm public/index.html gedit config/routes.rb
Edit routes, like this
... root :to => "home#index" ...
Test your server at http://localhost:3000
rails server
Create scaffolding
rails generate scaffold Post name:string title:string content:text rake db:migrate
Database
Using Mysql
Making a new application
database.yml file
development:
adapter: mysql2 encoding: utf8 database: blog_development pool: 5 username: root<change this> password: <change this> socket: /tmp/mysql.sock
Using Postgres
Make sure you have pg gem installed (not the old "postgres" gem)
gem install pg
Making a new application
rails -d postgresql my_rails_app
database.yml file
development: adapter: postgresql host: localhost port: 5432 username: your_db_username password: your_db_password database: your_rails_project_development schema_search_path: public encoding: utf8 template: template0
Reset database
Reset database contents
rake db:reset rake db:migrate
or
rake db:reset db:migrate
Recreate database structure
rake db:drop rake db:create rake db:migrate
or
rake db:drop db:create db:migrate
Database field types
| Rails Migration Symbol | MySQL Data Type | 
|---|---|
| :binary | blob | 
| :boolean | tinyint(1) | 
| :date | date | 
| :datetime | datetime | 
| :decimal | decimal | 
| :float | float | 
| :integer | int(11) | 
| :string | varchar(255) | 
| :text | text | 
| :time | time | 
| :timestamp | datetime | 
More info
Try this: http://wiki.rubyonrails.org/database-support/postgres
See also RVM