Ruby on rails 如何为非';t在models文件夹的根目录中?
我想为我的服务器中的模型创建一个factory girl,它位于models文件夹中的一个文件夹中 我的树视图如下所示:Ruby on rails 如何为非';t在models文件夹的根目录中?,ruby-on-rails,factory-bot,Ruby On Rails,Factory Bot,我想为我的服务器中的模型创建一个factory girl,它位于models文件夹中的一个文件夹中 我的树视图如下所示: ├── app | ├── models │ │ ├── xxx │ │ | ├── user.rb ├── spec │ ├── factories │ │ ├── xxx │ │ | ├── user.rb FactoryGirl.define do factory :user do username {
├── app
| ├── models
│ │ ├── xxx
│ │ | ├── user.rb
├── spec
│ ├── factories
│ │ ├── xxx
│ │ | ├── user.rb
FactoryGirl.define do
factory :user do
username { 'aaa' }
end
end
我的工厂女孩看起来像:
├── app
| ├── models
│ │ ├── xxx
│ │ | ├── user.rb
├── spec
│ ├── factories
│ │ ├── xxx
│ │ | ├── user.rb
FactoryGirl.define do
factory :user do
username { 'aaa' }
end
end
当我尝试生成用户时,我得到错误:
用户的未定义方法“新建”:模块
您的模型是在名称空间下定义的吗?例如,如果您的
app/models/xxx/user.rb
定义了一个类:
class XXX::User
#...
end
然后在您的工厂中,您可以执行以下操作:
FactoryGirl.define do
factory :user, class: XXX::User do
username { 'aaa' }
end
end