当前位置 : 主页 > 编程语言 > ruby >

ruby-on-rails – 如何在Sinatra组织模型?

来源:互联网 收集:自由互联 发布时间:2021-06-23
我在Sinatra项目中有一个非常适合我的模型. 假设我有2个模型:Post和Comment,nn Post模型,我必须调用Comment模型.现在我有 class:Post‘:uninitialized constant Comment(NameError). 我知道它在订购模型的
我在Sinatra项目中有一个非常适合我的模型.

假设我有2个模型:Post和Comment,nn Post模型,我必须调用Comment模型.现在我有< class:Post>‘:uninitialized constant Comment(NameError).

我知道它在订购模型的要求时存在问题,但是如果我有很多模型呢?什么是Rails方式需要模型等?

UPDATE

我使用此代码在Sinatra / Rack / Grape应用程序中自动加载我的模型.此代码应位于代码的顶部,即引导文件中.

models = File.join(File.dirname(__FILE__), 'app', 'models') # path to your models
$LOAD_PATH << File.expand_path(models)

# Constent Missing for requiring models files
def Object.const_missing(const)
    require const.to_s.underscore
    klass = const_get(const)
    return klass if klass
end
Rails方法基于一个非常好的Ruby特性:const_missing.您可以编写const_missing方法或在Web上查找const_missing和sinatra的解决方案.
网友评论