首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >在json response rails中将公共文件作为url发送

在json response rails中将公共文件作为url发送
EN

Stack Overflow用户
提问于 2021-03-29 18:23:08
回答 1查看 47关注 0票数 0

我在公共文件夹rails中有徽标文件。

我想发送的文件,作为网址,以便前端可以访问网址,以查看文件。

如何将文件作为url发送到我的响应json中的文件?

我有这样的序列化程序

代码语言:javascript
复制
class PostOwnerSerializer
  include FastJsonapi::ObjectSerializer
   attribute :avatar do |u|
    simple_logo = File.open(File.join(Rails.root, 'public', 'simple.png'))
    # Rails.application.routes.url_helpers.rails_blob_url(simple_logo , only_path: true)
   end
end

我尝试使用rails url helper,但它出错。

代码语言:javascript
复制
NoMethodError:
undefined method `signed_id' for #<File:/ahoyhu/public/simple.png> 
EN

回答 1

Stack Overflow用户

发布于 2021-03-29 19:56:03

代码语言:javascript
复制
    simple_logo = "http://localhost:3000/simple.png"

因此您可以将domain作为ENV变量。例如ENV‘’HOST‘= "http://localhost:3000",将url格式化为

代码语言:javascript
复制
    simple_logo = "#{ENV['HOST']}/simple.png"

注意:将http://localhost:3000替换为您的域

如果您在生产环境中运行应用程序,请在production.rb中启用以下代码

代码语言:javascript
复制
    config.public_file_server.enabled = true

    config.serve_static_assets = true
票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/66852489

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档