ruby-on-rails 我的rails gem可以和gem应用程序中定义的模型交互吗?

vaj7vani  于 5个月前  发布在  Ruby
关注(0)|答案(1)|浏览(72)

我有两个rails应用程序,有一个服务被两个都使用。我已经将服务重构为一个gem,可以被两个rails应用程序利用。
例如,gem中定义的服务

class MyService

  def method_that_uses_a_model
    ApiModel.create({})
  end

end

字符串
但模型是在Rails应用程序中定义的

class ApiModel
end


作为一个gem,该服务是否可以在将使用它的Rails应用程序中访问Rails模型?
如果没有,我如何从gem中访问rails应用程序中定义的模型?

yc0p9oo0

yc0p9oo01#

是的。虽然这意味着你的gem非常脆弱。你最好提供这个类作为gem的配置选项,这样你的应用程序就可以设置这个配置选项,甚至可以在应用程序的初始化器中设置gem中的常量。

相关问题