【发布时间】:2023-03-22 05:11:01
【问题描述】:
您好,我正在编写一个 gem 和一个使用该 gem 的 rails 应用程序。
gem 根据传递的值生成一个图像文件。(我正在将它写在 gem 的根目录中)
在我的 rails 应用程序中,我想访问该图像文件。我怎样才能做到这一点。
为了实现这一点,我应该在 gem 和 rails-app 中进行哪些修改?
【问题讨论】:
-
你想用这个文件做什么?您可以简单地使用 File.open(file_path) 打开一个文件,它的确切位置并不重要,但取决于您想要做什么以及服务器的设置方式,可能存在权限问题。无论如何,gems 根目录并不是存储文件的正确位置。
-
这是一张图片。我想在我的 Rails 应用程序的网页中显示它
-
在这种情况下,您甚至不必从 Raiuls 代码“访问”它。您只需将其存储在公共文件夹(或公共的某些子文件夹,如 /images)中,它就可供外部使用。因此,您只需要修改此 gem,以便将其存储在正确的位置。
-
在编写 gem 时,让 gem 的最终用户选择写入文件的位置似乎是最明显的。如果 gem 是独立的,那应该是任何路径(在写入图像之前作为参数传入),并且 Rails 应用程序需要管理它的去向。如果它是 Rails 插件,那么 gem 可以向 Rails 或 Rails 配置询问正确的位置。
标签: ruby-on-rails ruby ruby-on-rails-3 ruby-on-rails-4 rubygems