Skip to content

Instantly share code, notes, and snippets.

@guinslym
Created December 20, 2013 05:23
Show Gist options
  • Save guinslym/8050722 to your computer and use it in GitHub Desktop.
Save guinslym/8050722 to your computer and use it in GitHub Desktop.
I fixed my problem. But I was wondering if it's possible to create a table like this (see:: second gist - original).. Cause there is an add_index: email but there is no t.string :email, in the Do Block
#This is my file altered... the one that works for me
class DeviseCreateUsers < ActiveRecord::Migration
def change
create_table(:users) do |t|
## Database authenticatable
t.string :email, :null => false, :default => ""
t.string :encrypted_password, :null => false, :default => ""
## Rememberable
t.datetime :remember_created_at
t.timestamps
end
add_index :users, :email, :unique => true
end
end
# Original from https://github.com/apeacox/12dos-bookmarks
class DeviseCreateUsers < ActiveRecord::Migration
def self.up
create_table(:users) do |t|
t.database_authenticatable :null => false
t.rememberable
t.timestamps
end
add_index :users, :email, :unique => true
end
def self.down
drop_table :users
end
end
# This is the output from rake db:migrate when I tryied it with from the original file https://github.com/apeacox/12dos-bookmarks
rake db:migrate
== DeviseCreateUsers: migrating ==============================================
-- create_table(:users)
rake aborted!
An error has occurred, this and all later migrations canceled:
undefined method `database_authenticatable' for #<ActiveRecord::ConnectionAdapters::TableDefinition:0x00000003223b40>/home/guinslym/Documents/programming/rails_book/tuto/boomarks2/12dos-bookmarks/db/migrate/20130612160324_devise_create_users.rb:4:in `block in up'
/home/guinslym/.rvm/gems/ruby-2.0.0-p353/gems/activerecord-4.0.0.rc2/lib/active_record/connection_adapters/abstract/schema_statements.rb:184:in `create_table'
/home/guinslym/.rvm/gems/ruby-2.0.0-p353/gems/activerecord-4.0.0.rc2/lib/active_record/migration.rb:625:in `block in method_missing'
/home/guinslym/.rvm/gems/ruby-2.0.0-p353/gems/activerecord-4.0.0.rc2/lib/active_record/migration.rb:597:in `block in say_with_time'
/home/guinslym/.rvm/gems/ruby-2.0.0-p353/gems/activerecord-4.0.0.rc2/lib/active_record/migration.rb:597:in `say_with_time'
/home/guinslym/.rvm/gems/ruby-2.0.0-p353/gems/activerecord-4.0.0.rc2/lib/active_record/migration.rb:617:in `method_missing'
/home/guinslym/.rvm/gems/ruby-2.0.0-p353/gems/activerecord-4.0.0.rc2/lib/active_record/migration.rb:383:in `method_missing'
/home/guinslym/Documents/programming/rails_book/tuto/boomarks2/12dos-bookmarks/db/migrate/20130612160324_devise_create_users.rb:3:in `up'
/home/guinslym/.rvm/gems/ruby-2.0.0-p353/gems/activerecord-4.0.0.rc2/lib/active_record/migration.rb:534:in `up'
/home/guinslym/.rvm/gems/ruby-2.0.0-p353/gems/activerecord-4.0.0.rc2/lib/active_record/migration.rb:574:in `exec_migration'
/home/guinslym/.rvm/gems/ruby-2.0.0-p353/gems/activerecord-4.0.0.rc2/lib/active_record/migration.rb:555:in `block (2 levels) in migrate'
/home/guinslym/.rvm/gems/ruby-2.0.0-p353/gems/activerecord-4.0.0.rc2/lib/active_record/migration.rb:554:in `block in migrate'
/home/guinslym/.rvm/gems/ruby-2.0.0-p353/gems/activerecord-4.0.0.rc2/lib/active_record/connection_adapters/abstract/connection_pool.rb:294:in `with_connection'
/home/guinslym/.rvm/gems/ruby-2.0.0-p353/gems/activerecord-4.0.0.rc2/lib/active_record/migration.rb:553:in `migrate'
/home/guinslym/.rvm/gems/ruby-2.0.0-p353/gems/activerecord-4.0.0.rc2/lib/active_record/migration.rb:709:in `migrate'
/home/guinslym/.rvm/gems/ruby-2.0.0-p353/gems/activerecord-4.0.0.rc2/lib/active_record/migration.rb:959:in `block in execute_migration_in_transaction'
/home/guinslym/.rvm/gems/ruby-2.0.0-p353/gems/activerecord-4.0.0.rc2/lib/active_record/migration.rb:1005:in `block in ddl_transaction'
/home/guinslym/.rvm/gems/ruby-2.0.0-p353/gems/activerecord-4.0.0.rc2/lib/active_record/connection_adapters/abstract/database_statements.rb:202:in `block in transaction'
/home/guinslym/.rvm/gems/ruby-2.0.0-p353/gems/activerecord-4.0.0.rc2/lib/active_record/connection_adapters/abstract/database_statements.rb:210:in `within_new_transaction'
/home/guinslym/.rvm/gems/ruby-2.0.0-p353/gems/activerecord-4.0.0.rc2/lib/active_record/connection_adapters/abstract/database_statements.rb:202:in `transaction'
/home/guinslym/.rvm/gems/ruby-2.0.0-p353/gems/activerecord-4.0.0.rc2/lib/active_record/transactions.rb:209:in `transaction'
/home/guinslym/.rvm/gems/ruby-2.0.0-p353/gems/activerecord-4.0.0.rc2/lib/active_record/migration.rb:1005:in `ddl_transaction'
/home/guinslym/.rvm/gems/ruby-2.0.0-p353/gems/activerecord-4.0.0.rc2/lib/active_record/migration.rb:958:in `execute_migration_in_transaction'
/home/guinslym/.rvm/gems/ruby-2.0.0-p353/gems/activerecord-4.0.0.rc2/lib/active_record/migration.rb:920:in `block in migrate'
/home/guinslym/.rvm/gems/ruby-2.0.0-p353/gems/activerecord-4.0.0.rc2/lib/active_record/migration.rb:916:in `each'
/home/guinslym/.rvm/gems/ruby-2.0.0-p353/gems/activerecord-4.0.0.rc2/lib/active_record/migration.rb:916:in `migrate'
/home/guinslym/.rvm/gems/ruby-2.0.0-p353/gems/activerecord-4.0.0.rc2/lib/active_record/migration.rb:764:in `up'
/home/guinslym/.rvm/gems/ruby-2.0.0-p353/gems/activerecord-4.0.0.rc2/lib/active_record/migration.rb:742:in `migrate'
/home/guinslym/.rvm/gems/ruby-2.0.0-p353/gems/activerecord-4.0.0.rc2/lib/active_record/railties/databases.rake:42:in `block (2 levels) in <top (required)>'
/home/guinslym/.rvm/gems/ruby-2.0.0-p353/gems/rake-10.0.4/lib/rake/task.rb:246:in `call'
/home/guinslym/.rvm/gems/ruby-2.0.0-p353/gems/rake-10.0.4/lib/rake/task.rb:246:in `block in execute'
/home/guinslym/.rvm/gems/ruby-2.0.0-p353/gems/rake-10.0.4/lib/rake/task.rb:241:in `each'
/home/guinslym/.rvm/gems/ruby-2.0.0-p353/gems/rake-10.0.4/lib/rake/task.rb:241:in `execute'
/home/guinslym/.rvm/gems/ruby-2.0.0-p353/gems/rake-10.0.4/lib/rake/task.rb:184:in `block in invoke_with_call_chain'
/home/guinslym/.rvm/gems/ruby-2.0.0-p353/gems/rake-10.0.4/lib/rake/task.rb:177:in `invoke_with_call_chain'
/home/guinslym/.rvm/gems/ruby-2.0.0-p353/gems/rake-10.0.4/lib/rake/task.rb:170:in `invoke'
/home/guinslym/.rvm/gems/ruby-2.0.0-p353/gems/rake-10.0.4/lib/rake/application.rb:143:in `invoke_task'
/home/guinslym/.rvm/gems/ruby-2.0.0-p353/gems/rake-10.0.4/lib/rake/application.rb:101:in `block (2 levels) in top_level'
/home/guinslym/.rvm/gems/ruby-2.0.0-p353/gems/rake-10.0.4/lib/rake/application.rb:101:in `each'
/home/guinslym/.rvm/gems/ruby-2.0.0-p353/gems/rake-10.0.4/lib/rake/application.rb:101:in `block in top_level'
/home/guinslym/.rvm/gems/ruby-2.0.0-p353/gems/rake-10.0.4/lib/rake/application.rb:110:in `run_with_threads'
/home/guinslym/.rvm/gems/ruby-2.0.0-p353/gems/rake-10.0.4/lib/rake/application.rb:95:in `top_level'
/home/guinslym/.rvm/gems/ruby-2.0.0-p353/gems/rake-10.0.4/lib/rake/application.rb:73:in `block in run'
/home/guinslym/.rvm/gems/ruby-2.0.0-p353/gems/rake-10.0.4/lib/rake/application.rb:160:in `standard_exception_handling'
/home/guinslym/.rvm/gems/ruby-2.0.0-p353/gems/rake-10.0.4/lib/rake/application.rb:70:in `run'
/home/guinslym/.rvm/gems/ruby-2.0.0-p353/bin/ruby_executable_hooks:15:in `eval'
/home/guinslym/.rvm/gems/ruby-2.0.0-p353/bin/ruby_executable_hooks:15:in `<main>'
Tasks: TOP => db:migrate
(See full trace by running task with --trace)
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment