2012-07-17 25 views
19

lo siento por molestarlo pero tengo muchas preguntas sobre este error. por primera vez este es mi user_controller archivo rspecPG :: Error: ERROR: la relación "usuarios" no existe

requieren 'spec/spec_helper'

describe UserController do 

it "create new user" do 
    post "create" 
    assigns[:users].should_not be_new_record 
end 
end 

esta es mi UserController

class UserController < ApplicationController 
    def create 
    @users = User.new 
    if @users.save 
     flash[:notice] = 'new user was successfully created.' 
    else 
     render :action => :new 
    end 
    end 

    def new 
    @user = User.new 
    end 
end 

y mi routes.rb (creo que el problema está aquí, excusa pero soy nuevo en este lenguaje)

Estaciones::Application.routes.draw do 
    devise_for :users 

    root :to => "home#index" 
    resources :user 
end 

cuando intento probar mi user_controller_rspec entonces me sale este error

fracasos:

1) UserController create new user 
    Failure/Error: post "create" 
    ActiveRecord::StatementInvalid: 
    PG::Error: ERROR: relation "users" does not exist 
    LINE 4:    WHERE a.attrelid = '"users"'::regclass 
              ^
    :    SELECT a.attname, format_type(a.atttypid, a.atttypmod), d.adsrc, a.attnotnull 
        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 
# ./app/controllers/user_controller.rb:3:in `new' 
# ./app/controllers/user_controller.rb:3:in `create' 
# ./spec/controllers/user_controller_spec.rb:6 

Finished in 0.01722 seconds 
1 example, 1 failure 

Failed examples: 

rspec ./spec/controllers/user_controller_spec.rb:5 # UserController create new user 

cómo puedo solucionarlo ... gracias

+0

Tiene una respuesta correcta que se muestra a continuación. deberías aceptarlo – panzhuli

Respuesta

45

plazo esto

rake db:migrate 

entonces este

rake db:test:prepare 
+0

estoy trabajando con rspec que no importa? – Asantoya

+0

Sí, necesita hacer esto para rspec – drhenner

+1

He editado su pregunta para que parezca código real ... La próxima vez agregue 4 espacios antes de cualquier código. – drhenner

3

Varia alternativa nt

RAILS_ENV=test rake db:migrate

Cuestiones relacionadas