Tôi có ứng dụng Ruby Sinatra và tôi có một số mã mà tôi cần thực thi trên tất cả các tuyến ngoại trừ một vài ngoại lệ. Làm thế nào để tôi làm điều này?ở Sinatra làm thế nào để bạn tạo bộ lọc "trước" phù hợp với tất cả các tuyến trừ một số
Nếu tôi muốn thực thi mã trên các tuyến đường được lựa chọn (kiểu danh sách trắng) Tôi muốn làm điều này:
['/join', "/join/*", "/payment/*"].each do |path|
before path do
#some code
end
end
Làm thế nào để làm điều đó theo chiều ngược lại mặc dù (phong cách danh sách đen)? Tôi muốn để phù hợp với tất cả các tuyến ngoại trừ '/join'
, '/join/*'
và '/payment/*'
Tôi có thể bao gồm đường dẫn gốc ('/') trong câu lệnh chuyển này như thế nào? –
vượt qua nếu ['join', 'payment', nil] .include? request.path_info.split ('/') [1] –