Я пытался сделать что-то подобное сам, мне нужно было использовать блок before
примерно так:
before '/news/:news_slug' do
# Before news code
end
Однако, если вы хотите использовать блок before для других вещей, вам придется сделать то, что я сделал, что-то вроде:
def news_before
# Before news code
end
["/url_one", "/url_two", "/news/:news_slug"].each do |path|
before path do
if params[:news_slug]
news_before
end
end
end
Надеюсь, это поможет вам.