我正在寻找更清晰的解决方案,更像Slim,在标签内部写标签,这是我到目前为止所做的:
after_create :assign_repeat_id
def assign_repeat_id
self.repeat_id = id
save
end
上面的代码工作正常 - 生成我想要的输出,但对我来说看起来并不干净。我已经尝试将其重写为eRuby
td = "#{p.created_at.to_formatted_s(:long)} <small>(#{time_ago_in_words(p.created_at)} ago)</small>".html_safe
然后使用Erb2Slim转换器将其转换为Slim
<td><%= p.created_at.to_formatted_s(:long) %> <small><%= time_ago_in_words(p.created_at) %> ago)</small></td>
之后它没有显示td
= p.created_at.to_formatted_s(:long)
small
= time_ago_in_words(p.created_at)
| ago)
标签及其内容,知道在Slim上编写上述代码的最佳方式是什么以及什么是最好的方式?
答案 0 :(得分:2)
好像你有缩进(空格)的问题。尝试使用以下缩进:
td
= p.created_at.to_formatted_s(:long)
|
small
| (
= time_ago_in_words(p.created_at)
| ago)
注意:在第3行管道后需要2个空格