1

私はシナトラを学んでいて、簡単なウェブサイトを作ろうとしています。これは私の Web ディレクトリ ツリーです。

├── app.rb
│
├── admin
│   └── views
│   └── admin.rb
├── models
├── static
│               
└── views

そして今、私は管理者のためだけにビューをレンダリングしたい. つまり、異なる場所に 2 つのビュー フォルダーがあり、管理コントローラーとビュー用の管理者と、ホームページ用の別のビューがあります。

4

1 に答える 1

2

ルート アプリケーション フォルダーに config.ru ファイルを追加します。

require './app'
require './admin/admin'
# run MyApp
run Rack::URLMap.new("/" => MyApp.new, "/admin" => AdminApp.new)

app.rb 内

require 'sinatra'
require 'haml'

class MyApp < Sinatra::Base
  get "/app" do
    haml :app
  end
end

admin.rb で

# admin.rb
class AdminApp < Sinatra::Base
  get "/" do
    haml :index
  end
end

最後にコンソールのrackup -p PORTNUMBER例で

rackup -p 4000

アップデート

Gistへの参照

于 2013-01-24T06:25:40.627 に答える