是否可以在中間人文件中檢索頁面的當前路徑?舉例來說,如果我有一個佈局文件layout.erb
的東西,如下列:在中間人佈局文件中獲取頁面的當前路徑
<%= page.path %>
<%= yield %>
和測試文件index.html
:
Testing
那麼當中間人呈現的頁面我會得到這樣的:
/index.html
Testing
是否可以在中間人文件中檢索頁面的當前路徑?舉例來說,如果我有一個佈局文件layout.erb
的東西,如下列:在中間人佈局文件中獲取頁面的當前路徑
<%= page.path %>
<%= yield %>
和測試文件index.html
:
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's 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