在 .erb 文件中使用 link_to,串联语法

发布于 2024-12-04 11:20:45 字数 395 浏览 1 评论 0原文

  1. 在index.html.erb中,我想要每个大学的链接如下所示:Apply - $25

  2. 我希望显示的价格根据 College.undergrad_app_fee 的值进行更改。

这是我尝试过的,但它不起作用。也许有一种特殊的串联语法可以将显式的“Apply -”与价格结合起来,或者我需要转义 <%= %>不知何故,或者有一种特殊的方法可以用 link_to 来做到这一点?

   <td><%= link_to 'Apply - ' college.undergrad_app_fee, college.application_url %></td>
  1. In index.html.erb, I want a link that looks like the following for each college: Apply - $25

  2. I want the price displayed to change based on the value of college.undergrad_app_fee.

This is what I've tried, but it doesn't work. Perhaps there's a special concatenation syntax to combine the explicit 'Apply -' with the price, or I need to escape <%= %> somehow, or there's a special way to do this with link_to?

   <td><%= link_to 'Apply - ' college.undergrad_app_fee, college.application_url %></td>

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(1

风月客 2024-12-11 11:20:45

使用字符串插值语法:

<td><%= link_to "Apply - #{college.undergrad_app_fee}", college.application_url %></td>

作为奖励,如果您只有原始价格,则可以使用 number_to_currency 对其进行格式化:

<td><%= link_to "Apply - #{number_to_currency(college.undergrad_app_fee)}", college.application_url %></td>

后续:

对于条件链接,请使用 link_to_iflink_to_unless,它们应该相对简单易用。

处理货币格式的 nil 情况有点棘手。您可以使用 || 运算符来执行此操作。

结合这两种方法将得到:

<td><%= link_to_if college.application_url, "Apply - #{number_to_currency(college.undergrad_app_fee || 0)}", college.application_url %></td>

使用 Rails 控制台是测试不同助手行为的好方法。您可以通过 helper 对象访问它们,例如:

> helper.number_to_currency(12)
 => "12,00 €"
> nil || 0
 => 0
> 12 || 0
 => 12

Use the string interpolation syntax:

<td><%= link_to "Apply - #{college.undergrad_app_fee}", college.application_url %></td>

As a bonus, if you only have the raw price, you can format it using number_to_currency:

<td><%= link_to "Apply - #{number_to_currency(college.undergrad_app_fee)}", college.application_url %></td>

Follow up:

For conditional links, use link_to_if or link_to_unless, they should be relatively straightforward to use.

Handling the nil case for the currency formatting is a bit trickier. You can use the || operator to do it.

Combining the two methods would give this:

<td><%= link_to_if college.application_url, "Apply - #{number_to_currency(college.undergrad_app_fee || 0)}", college.application_url %></td>

Using the rails console is a good way to test the behaviours of the different helpers. You can access them through the helper object, for example:

> helper.number_to_currency(12)
 => "12,00 €"
> nil || 0
 => 0
> 12 || 0
 => 12
~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文