首页 > 解决方案 > 如何在rails 5上的lib目录中的特定文件中使用模型

问题描述

我想在rails 5的lib目录中的特定文件中使用模型
例如:

库/app.rb

我想使用这个文件中的所有模型
我能怎么做?

我用了require 'models/post'

但我收到了Post::User not defined,因为我在 添加时使用belongs_to :user了 Post 模型 ,然后我收到了 ,所以我需要所有模型。
require 'models/user'devise not defined

标签: ruby-on-railsmongoid

解决方案


Rails 中的约定是每个类有一个文件。所以,如果你有 Foo 和 Bar 模型,Rails 会尝试自动为你加载 foo.rb 和 bar.rb。

您可以在同一个文件中定义多个模型,但这样的设置不会透明地为您自动加载。您必须手动要求该文件:

require 'app'

例如,您可以在控制器中执行此操作。


推荐阅读