Ruby on rails 告诉Rails在公共/资产以外的地方查找资产

Ruby on rails 告诉Rails在公共/资产以外的地方查找资产,ruby-on-rails,asset-pipeline,kubernetes-ingress,Ruby On Rails,Asset Pipeline,Kubernetes Ingress,我正在尝试在Rails API之上部署一个管理仪表板。目前,它的入口服务设置在site.com/api/admin,Rails正在site.com/assets上搜索资产,因此找不到它们 如何让Rails在site.com/api/assets/admin.css上查找资产?我尝试过使用config.assets.prefix='/api/',但这似乎只是将资产预编译到的目录更改为public/api/assets,但在application.html.erb中,样式表链接标记仍然是public

我正在尝试在Rails API之上部署一个管理仪表板。目前,它的入口服务设置在site.com/api/admin,Rails正在site.com/assets上搜索资产,因此找不到它们


如何让Rails在site.com/api/assets/admin.css上查找资产?我尝试过使用config.assets.prefix='/api/',但这似乎只是将资产预编译到的目录更改为public/api/assets,但在application.html.erb中,样式表链接标记仍然是public/assets/admin.css,导致所有资产出现404个错误。

您需要将文件夹的路径添加到资产管道中。您可以通过转到config/initializers/assets.rb并添加以下行来完成此操作:

Rails.application.config.assets.paths << Rails.root.join('my', 'folder', 'path')
或者,在这种情况下:

Rails.application.config.assets.paths << Rails.root.join('app', 'public', 'api', 'assets')

经过几天的故障排除,我尝试将config.relative\u url\u root设置为“/api”,现在终于可以工作了

您确定不使用仅API版本吗?