Ruby on rails 由于命名空间冲突,无法测试RSpec?

Ruby on rails 由于命名空间冲突,无法测试RSpec?,ruby-on-rails,unit-testing,rspec,namespaces,nameerror,Ruby On Rails,Unit Testing,Rspec,Namespaces,Nameerror,我的Rails应用程序中有一个User模型,我还有一个UserQueue模型 用户有许多用户队列并且用户队列属于用户 问题就在这里。当我尝试测试UserQueue并尝试使用 let(:user) { FactoryGirl.create(:user) } before { @queue = user.user_queues.create(queue_privacy_id: 1) } 我得到以下错误 NameError: uninitialized constant User::user_

我的Rails应用程序中有一个
User
模型,我还有一个
UserQueue
模型

用户有许多用户队列
并且
用户队列属于用户

问题就在这里。当我尝试测试UserQueue并尝试使用

let(:user) { FactoryGirl.create(:user) }
before { @queue = user.user_queues.create(queue_privacy_id: 1) }
我得到以下错误

NameError:
   uninitialized constant User::user_queue
我从中了解到,RSpec期望UserQueue位于User(即User::UserQueue)的名称空间中。然而,在我的应用程序中并非如此。我无法命名模型队列,因为它是保留的

有没有办法告诉RSpec模型没有名称空间

这是我的模型

class User < ActiveRecord::Base
  attr_protected

  has_many :user_queues, :class_name => "user_queue", :foreign_key => "user_id"

  def name
    "#{self.first_name} #{self.last_name}"
  end
end


class UserQueue < ActiveRecord::Base
  attr_accessible :queue_privacy_id, :user_id

  belongs_to :user, :class_name => "User", :foreign_key => "user_id"
end
class用户“用户队列”,:外键=>“用户id”
定义名称
“{self.first_name}{self.last_name}”
结束
结束
类UserQueue“user”,:foreign\u key=>“user\u id”
结束

我没有代表对此发表评论,但我想请您也发布您的工厂

其他一些想法: 看看你是如何处理FactoryGirl的。我假设您不在Rails 4上,因为:


attr\u accessible:queue\u privacy\u id,:user\u id

发布您的用户和用户队列模型?在before块中?是的,这是rails 3应用程序。但是你联系到我的协会部门解决了这个问题。谢谢