ruby - 如何将参数从 Roda 路由传递到作为独立 Rack 应用程序实现的另一个路由?
问题描述
我有一个 Roda API,所有资源都提取到独立应用程序中,并作为机架应用程序添加到主路由器,使用r.run SubApp
. 但是我必须在另一个文件中使用一个文件中的参数。以此为例:
# api/api.rb
class Api < Roda
route do |router|
router.on "api" do
router.on "v1" do
router.on "users" do
router.run UserApp
end
end
end
end
end
# api/user_app.rb
class UserApp < Roda
route do |router|
router.is do
# ....
end
router.on String do |identifier| # <--- this parameter
router.is do
# ...
end
# Branch: /api/v1/users/:identifier/comments
router.on "roles" do
router.run CommentApp # How to pass identifier inside??
end
end
end
end
# api/comments_app.rb
class CommentApp < Roda
# ...
# <---- here I need `identifier` value
end
解决方案
推荐阅读
- macos - 在异步加载文件时更新 NSWindow 内容
- arrays - 用数组转置数据集
- javascript - 在 ASP.net MVC Web 应用程序中跟踪注销时间
- java - 相机 API - 如何专注于图像中多边形的中心?
- matrix - glmnet 输入错误,输入矩阵的格式不正确
- bash - 错误:-测试: ing: 一元运算符预期
- java - 为什么我创建的目录没有同时出现在图库和 Google 相册中?
- java - Hibernate 5 导致 SQL Server 日志文件增长
- c# - 实体框架代码优先区分大小写
- powershell - 通过其键访问嵌套的 hasttables