Reputation: 11
I have been trying to deploy my Rails applicaton to Heroku. It uses paperclip and SQLite at my computer and I am trying to use SQLite at my computer and PostgreSQL at Heroku.
Here is my Gemfile:
ruby '1.9.3'
gem 'rails', '3.2.9'
group :production do
gem "pg"
gem 'thin'
gem 'rails_12factor', '0.0.2'
end
group :development, :test do
gem "sqlite3"
gem "pg"
end
My config/database.yml:
# SQLite version 3.x
# gem install sqlite3
#
# Ensure the SQLite 3 gem is defined in your Gemfile
# gem 'sqlite3'
development:
adapter: sqlite3
database: db/development.sqlite3
pool: 5
timeout: 5000
# Warning: The database defined as "test" will be erased and
# re-generated from your development database when you run "rake".
# Do not set this db to the same as development or production.
test: &test
adapter: sqlite3
database: db/test.sqlite3
pool: 5
timeout: 5000
production:
adapter: postgresql
database: tagitpostgree
pool: 5
timeout: 5000
cucumber:
<<: *test
And I have been getting those kind of errors at Heroku. The database is not being created I guess? Any hint?
The errors I am getting are like below:
C:\Sites\tag-it>heroku run rake db:migrate
Running `rake db:migrate` attached to terminal... up, run.3193
Connecting to database specified by DATABASE_URL
rake aborted!
undefined method `has_attached_file' for User(Table doesn't exist):Class
/app/vendor/bundle/ruby/1.9.1/gems/activerecord-3.2.9/lib/active_record/dynamic_matchers.rb:50:in `method_missing'
/app/app/models/user.rb:17:in `<class:User>'
My migrations:
ls db/migrate
20121128000354_devise_create_users.rb
20121128000910_rolify_create_roles.rb
20121128000933_add_name_to_users.rb
20130827150824_create_data_files.rb
20130827154510_add_attachment_avatar_to_users.rb
20130827162448_add_avatar_to_users.rb
20130827183819_add_project_to_projects.rb
20130827191647_add_attachment_video_to_projects.rb
20130827195845_create_tags.rb
20130827211446_add_project_id_to_tags.rb
20130827213541_add_user_id_to_tags.rb
20130831173534_create_projectparticipants.rb
20130831184444_add_project_id_to_projectparticipants.rb
20130831184522_add_user_id_to_projectparticipants.rb
20130831190120_adicionando_index.rb
20130908135549_add_college_to_users.rb
20130908143105_add_function_to_users.rb
20130908143303_add_course_to_users.rb
Upvotes: 1
Views: 2075
Reputation: 150
Try running a rake db:setup. You'll also need to include the Postgres login information in your database.yml file.
Upvotes: 1
Reputation: 584
You must read error message carefully.
undefined method `has_attached_file' for User(Table doesn't exist):Class
has_attached_file is paperclip method and I can't see paperclip gem in your Gemfile.
Hope this can help you.
Upvotes: 1