2015-04-24 38 views
0

我已經創建了設計用戶很多次,但這是第一次發生這種情況。 Devise將無法創建它創建的文件。我不知道爲什麼。奇怪的錯誤創建設計用戶

rails generate devise user 
     invoke active_record 
     create db/migrate/20150424115858_devise_create_users.rb 
     create app/models/user.rb 
     invoke rspec 
     create  spec/models/user_spec.rb 
     invoke  fabrication 
/Users/moiseszaragoza/.rvm/gems/[email protected]_name/gems/activerecord-4.2.0/lib/active_record/connection_adapters/postgresql_adapter.rb:592:in `async_exec': PG::UndefinedTable: ERROR: relation "users" does not exist (ActiveRecord::StatementInvalid) 
LINE 5:    WHERE a.attrelid = '"users"'::regclass 
             ^
:    SELECT a.attname, format_type(a.atttypid, a.atttypmod), 
        pg_get_expr(d.adbin, d.adrelid), a.attnotnull, a.atttypid, a.atttypmod 
       FROM pg_attribute a LEFT JOIN pg_attrdef d 
        ON a.attrelid = d.adrelid AND a.attnum = d.adnum 
       WHERE a.attrelid = '"users"'::regclass 
       AND a.attnum > 0 AND NOT a.attisdropped 
       ORDER BY a.attnum 

這裏是我的配置的拷貝/ application.rb中

require File.expand_path('../boot', __FILE__) 
require 'rails/all' 
Bundler.require(*Rails.groups) 

module AppName 
    class Application < Rails::Application 
    config.active_record.raise_in_transactional_callbacks = true 
    initializer 'setup_asset_pipeline', :group => :all do |app| 
     app.config.assets.precompile.shift 
     app.config.assets.precompile.push(Proc.new do |path| 
     File.extname(path).in? [ 
      '.html', '.erb', '.haml',     # Templates 
      '.png', '.gif', '.jpg', '.jpeg',   # Images 
      '.eot', '.otf', '.svc', '.woff', '.ttf', # Fonts 
     ] 
     end) 
    end 
    I18n.enforce_available_locales = false 
    config.before_initialize do 
     dev = File.join(Rails.root, 'config', 'config.yml') 
     YAML.load(File.open(dev)).each do |key,value| 
     ENV[key.to_s] = value 
     end if File.exists?(dev) 
    end 
    end 
end 
+0

你可以提供你的config/application.rb中? –

+0

@AlexanderKobelev config/application.rb文件現在是過去的問題 – MZaragoza

回答

3

這似乎是一個問題,你的數據庫,你配置database.xml了嗎?如果是這樣,嘗試不同版本的設計寶石,更新它,如果它是最後一個版本,降級。

+0

我沒有database.xml我有一個config/database.yml – MZaragoza

+1

這是一個猜測,而不是一個確定的答案。您應該首先在評論區域討論該問題,然後在確定已解決問題後發佈答案。 –

+0

感謝您的幫助 – MZaragoza

0

看起來它可能會在調用製造時爆炸,因爲我還沒有用戶表。

我刪除從我的寶石文件gem 'fabrication-rails',然後它的工作

$ rails generate devise user 
     invoke active_record 
     create db/migrate/20150424130126_devise_create_users.rb 
     create app/models/user.rb 
     invoke rspec 
     create  spec/models/user_spec.rb 
     invoke  factory_girl 
     create  spec/factories/users.rb 
     insert app/models/user.rb 
     route devise_for :users