【发布时间】:2016-06-08 20:18:53
【问题描述】:
我正在尝试创建一个服务对象以从 product.rb AR 模型中提取一些方法,但由于某种原因,我无法自动加载新的 TwitterShare 类。当我打开控制台并尝试Product.last.twitter_share_text 之类的东西时,我得到NameError: uninitialized constant Product::TwitterShare 错误。
这里发生了什么?我应该如何组织我的文件夹/文件?我必须告诉 Rails 自动加载服务吗?这是当前代码:
app/models/product.rb
class Product < ActiveRecord::Base
def twitter_share_text
TwitterShare.new(name: self.name, oneliner: self.oneliner).return_text
end
app/services/twitter_share.rb
class TwitterShare
attr_reader .........
def initialize....
end
【问题讨论】:
标签: ruby-on-rails service-object