仲介者ファイル内のページの現在のパスを取得することは可能ですか?仲介者レイアウトファイルの現在のパスを取得する
<%= page.path %>
<%= yield %>
とテストファイルindex.html
:私は、次のようなものでレイアウトファイルlayout.erb
持っている場合たとえば、
Testing
を仲介がページをレンダリングするとき、私はのようなものになるだろう
/index.html
Testing
仲介者ファイル内のページの現在のパスを取得することは可能ですか?仲介者レイアウトファイルの現在のパスを取得する
<%= page.path %>
<%= yield %>
とテストファイルindex.html
:私は、次のようなものでレイアウトファイルlayout.erb
持っている場合たとえば、
Testing
を仲介がページをレンダリングするとき、私はのようなものになるだろう
/index.html
Testing
Middlemanにもcurrent_page
という変数があります。 current_page.path
はこのリソースのソースパスです(テンプレート拡張機能を持たないソースディレクトリからの相対パス)。current_page.url
はディレクトリインデックスのないパスです(foo/index.html
はfoo
となります)。
<%= current_page.path %>
# -> index.html
<%= current_page.url %>
# ->/
詳細については、MiddlemanのMiddleman::Sitemap::Resource
rubydocを参照してください。 http://rubydoc.info/github/middleman/middleman/Middleman/Sitemap/Resource
解決策は以下のとおりです。
<%= request.path %>
これはなぜ機能するのですか? – jackyalcine
私が推測しなければならないのは、Middlemanがアプリケーションを構築してサーバーを作成し、アプリケーションのページを要求し、その応答をファイルに書き込むと言うでしょう。しかし、私は正直に分かりません。 – LandonSchropp
@jackyalcine現在のパスのリソースオブジェクトにエイリアスされています。https://github.com/middleman/middleman/blob/dd0ee24ca3ae728b00f8987d74c360557c910946/middleman-core/lib/middleman-core/template_context.rb#L165 –
これはおそらく、現在のパスが公開され、文書化されていると見なす最良の方法です。 – LandonSchropp
ホスト名を取得する方法はありますか? – DaMainBoss