Mik*_*ike 23 rack ruby-on-rails sinatra ruby-on-rails-3
我想在我的rails应用程序中安装sinatra应用程序.但我希望这个人分享相同的布局.
iframe可以工作,但你还有其他想法吗?
谢谢
Hol*_*ust 38
你基本上需要做两件事:
你需要告诉Rails路由器某个URL路径是由另一个Rack应用程序处理的(在你的情况下是一个Sinata应用程序).这可以通过将其添加到routes.rb来完成:
match "/sinatra" => MySinatraApp, :anchor => false
Run Code Online (Sandbox Code Playgroud)
完成后,您可以像这样创建您的应用:
class MySinatraApp < Sinatra::Base
get "/" do
"Hello Sinatra World"
end
end
Run Code Online (Sandbox Code Playgroud)
现在的第二步是告诉你的Sinatra应用程序使用rails布局,默认情况下app/views/layouts/application.html.erbRails 3.1.默认情况下,Sinatra使用./views/layout.ext(ext作为您选择的模板系统的扩展).基本上,你必须告诉Sinatra
./views两者都可以通过在sinatra应用程序中设置以下内容来实现:
set :views, "/path/to/your/railsapp/views"
set :erb, layout => :"layout/application" # or whatever rendering engine you chose
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
8958 次 |
| 最近记录: |