将路线添加到Dashing仪表板

时间:2016-04-26 23:32:43

标签: routing sinatra dashing

如何在我可以访问的仪表板中添加路线,例如......

get '/:id' do
  protected!
  return params[:'id']
end

我可以从http://localhost:3030?id=1234

致电

1 个答案:

答案 0 :(得分:2)

最简单的方法是定义一个新的应用程序,并在由Dashing创建的config.ru内调用它。例如,我在一个虚拟仓库中创建了一个名为my_app.rb的新文件,其中包含以下内容:

# my_app.rb

require 'sinatra/base'

class MyApp < Sinatra::Base
  get '/:id' do
    "My own custom route! And the id is #{params[:id]}"
  end
end

并在config.ru内包含该应用,如此:

# Created by dashing until Sinatra::Application
…
run Sinatra::Application

# added by us
run MyApp

然后当你运行dashing start时,我们在app中定义的路径被调用。但是这种方法存在问题,因为您需要确保MyApp中定义的路由与已经由划线定义的路由冲突。解决此问题的另一种方法是让虚线在默认/以外的路径上运行。 this approach in the Wiki有一些文档。