A Question about Model and Database?

hi i m new to rails i need to know the => which is the best way to
create
Database table in Rails?

  1. rails generate model User name:string email:string
    this will create a migration file with something like this

class CreateUsers < ActiveRecord::Migration
def change
create_table :users do |t|
t.string :name # see here name column is already made becoz we
have passed a parameters

t.string :email # same as above

  t.timestamps
end

endend

this is one method

  1. rails generate model Page
    this will create a empty migration file something like this

class CreatePages < ActiveRecord::Migration
def change
create_table :users do |t|
===>> now we can add here like t.string “name” to create column
manually
========>>>>>
t.timestamps
end
endend

So which is the good way to do above things example 1 or example 2?
Please tell.

and if i have to write a drop_table method in migration, can i write in
the
way which i showed below

class CreateSubjects < ActiveRecord::Migration
def change
create_table :subjects do |t|
t.string “name”

  t.timestamps
end

end

def self.down
drop_table :subjects
end
end

So again same question which is the good way to do above things example
1
( model with parameter ) or example 2 ( model without parameter )?

Thanks for Taking Time to Read.

please help me

Rails is smart enough to determine if you want to create or drop a table
if
you have done the migration with change
def change
#code here
end

it only depends on how you write the commands
if you do
rake db:migrate
then it will create the db (if the code inside change is about it) and
if
you do
rake db:rollback
it will drop that table
in other case then

def up
#create table here
end

def down
#drop table here
end

take a look here
http://guides.rubyonrails.org/migrations.html
and then here
http://stackoverflow.com/questions/10365129/rails-migrations-self-up-and-self-down-versus-change
http://stackoverflow.com/questions/7600415/rails-3-generate-migration-no-up-or-down-method
there is a lot more on google

JavierQ

use def change
forget up and down def

cheers
Fahim Babar Patel

On 7 September 2012 22:08, ACK [email protected] wrote:

passed a parameters
2) rails generate model Page
end

So which is the good way to do above things example 1 or example 2?
Please tell.

It is entirely up to you, do whichever you prefer.

Colin

thanks for reply

This forum is not affiliated to the Ruby language, Ruby on Rails framework, nor any Ruby applications discussed here.

| Privacy Policy | Terms of Service | Remote Ruby Jobs