[英]How do I use HAML in a dynamic link?
我正在嘗試使用看起來像這樣的HAML創建一個鏈接
=link_to("Last updated on<%=@last_data.date_from.month %>",'/member/abc/def?month={Time.now.month}&range=xyz&year={Time.now.year}')
它沒有采用Ruby代碼,而是將其顯示為字符串
上次更新於<%= @ last_data.date_from.month%>
並且在URL中也沒有使用函數Time.now.month
或Time.now.year
。
如何在URL和字符串中傳遞Ruby代碼?
你應該使用這樣的東西:
= link_to("Last updated on #{@last_data.date_from.month}", "/member/abc/def?month=#{Time.now.month}&range=xyz&year=#{Time.now.year}")
請注意,在第二個字符串中,有必要更改'
to "
。如果鏈接文本變長,您可以使用以下內容:
= link_to("/member/abc/def?month=#{Time.now.month}&range=xyz&year=#{Time.now.year}") do
Last updated on #{@last_data.date_from.month}
在HAML中=
之后的所有內容都是Ruby表達式。 Ruby不像HAML那樣插入字符串,它有自己的插值方式。
在Ruby中,當你想在另一個字符串中包含某個變量的字符串值時,你可以這樣做。
"Some string #{Time.now}"
所以,它應該是:
= link_to "Last updated on #{@last_data.date_from.month}", "/member/abc/def?month=#{Time.now.month}&range=xyz&year=#{Time.now.year}"
一個簡單的語法簡單示例:
link_to "Profile #{rubycode}", "profile_path(@profile)/#{ruby_code}", class: "active"
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.