【发布时间】:2015-04-23 04:37:12
【问题描述】:
我在我的 rails 教程中为删除操作添加了一个确认对话框,并且我想在要删除的对象中包含一些文本。所以我尝试了这个:
<%= link_to 'Delete', article_path(article), method: :delete, data: { confirm: 'Really delete blog "#{article.title}"?' } %>
替换没有发生:结果对话框显示Really delete blog "#{article.title}"?。
我已将其更改为使用格式字符串,并且工作正常:
<%= link_to 'Delete', article_path(article), method: :delete, data: { confirm: 'Really delete blog "%s"?' % article.title } %>
发生替换:结果对话框显示Really delete blog "Of cabbages and kings"?
我要进行哪些更改才能使“#{article.title}”更易读?有什么区别?
【问题讨论】:
-
另一个问题(投票关闭作为重复)更容易在谷歌上找到并且有一个非常有用的答案。
-
可能是重复的,但我相信这个讨论可能对未来的 ruby-ists 有所帮助。该问题与带有
#{}插值的双引号与单引号的具体问题有关(另一个仅提到传递的差异)。也许应该编辑问题/答案,使他们更专注于这个特定问题(主题可能是:“为什么#{}不起作用”或类似的)。 -
关闭不等于删除。这只是意味着这里不需要更多的答案。我认为您的回答涵盖了这个问题所需的一切。