Ruby Sinatra中的子路由
是否有一种方法可以将不同的控制器映射到彼此相关的URL,特别是当一个控制器是另一个的子资源时 更具体地说,这里有一个例子:Ruby Sinatra中的子路由,ruby,routing,sinatra,Ruby,Routing,Sinatra,是否有一种方法可以将不同的控制器映射到彼此相关的URL,特别是当一个控制器是另一个的子资源时 更具体地说,这里有一个例子: 我有两种资源:工作和文章。作业包含多篇文章。尽管它们之间存在关系,但我希望在单独的文件中处理与它们相关的实际代码。因此,我有: 助手/job_api.rb和 helpers/article_api.rb 它们各自延伸至SinatraBase,如下所示: class-ArticleAPI
工作
和文章
。作业
包含多篇文章
。尽管它们之间存在关系,但我希望在单独的文件中处理与它们相关的实际代码。因此,我有:助手/job_api.rb
和
helpers/article_api.rb
它们各自延伸至SinatraBase,如下所示:
class-ArticleAPI
我现在想要的是将所有只属于作业的url请求映射到JobAPI
,以及属于文章(但始终与单个作业关联)的url请求映射到ArticleAPI
我的config.ru
如下所示:
$LOAD_PATH在
config.ru
文件中执行的代码与not的路由语法相同。这意味着此代码:
map "/job/:job_id/article" do
run ArticleAPI
end
可能无法在config.ru
中工作,因为Rack不会像Sinatra那样处理路径中的参数
map "/job/:job_id/article" do
run ArticleAPI
end