目录:
原型
-应用程序
-资产
-控制器
---welcome_controller.rb
领域对象
---SimilarJob.rb
实用程序
--API.rb
控制器代码
require_relative '../domainobjects/SimilarJob'
class WelcomeController < ApplicationController
def index
foo = API.new('DEVKEY')
res = foo.RetrieveFacts("Test", "Me")
#newResult = SimilarJob.new("test") <-- Failing Line!!!
render :text => res["Response"]["IsInternationalResponse"]
end
end
对象代码
class SimilarJob
end
我去掉了一些东西,但是 API 类存在于一个单独的目录“Utilities”中,出于某种原因,我什至不必使用“requires_relative”关键字来引用它。它是一个包含 HTTParty 的包装类,并且每次都向我的外部 API 发出成功的 GET 请求。有人可以解释为什么我似乎不必在任何地方引用它吗?
或者,每次尝试初始化 SimilarJob 类都会失败。错误是:
uninitialized constant WelcomeController::SimilarJob
根据我在这里和网络上的研究,这意味着我没有正确引用该文件。为了测试这一点,我尝试在“requires_relative”语句中错误地命名它,框架通知我无法加载请求的文件。所以看起来 Rails 正在寻找我的课程,只是由于某种原因它不会初始化它。
最让人抓狂的是,我会对 SimilarJob 做一些小改动,重启我的服务器,它就会一下子工作起来。如果我停止并再次启动服务器,它会回到我在下面粘贴的错误。
这是我第一次真正挖掘 .NET MVC 或 KnockoutJS 以外的东西。你们介意指出我的方法的错误吗?
编辑:我为此控制器使用了 generate 命令,因此所有视图和路由都可以正常工作。事实上,如果我注释掉有问题的行,我在 JSON 响应的最后一行引用的属性会很好地呈现给文件。
编辑v2:奇怪的是..将我的班级名称更改为乔布斯(一个字)正在摆脱这个错误。这很奇怪!谁能确认这是我的问题?