首页 > 解决方案 > 在字符串插值中格式化变量

问题描述

我有一个看起来像这样的字符串插值:

<ul class="list-group">
            <% @top_ten_cashflows.each do |transaction|%>
            <li class="list-group-item"> <%=" #{ transaction.date.format('%b') } - #{transaction.category.name} - #{transaction.amount}"%></li>
            <%end%>
        </ul>

当我尝试格式化日期时,Rails 会出现以下错误:

NoMethodError at /Dashboard
private method `format' called for Wed, 20 Jul 2016:Date

控制器如下所示:

    def dashboard
    #@cashflows = current_user.cashflows
   # cashflows_sums =@cashflows.inject do |sum,element| 
     @cashflows = Cashflow.where(user_id: current_user.id).joins(:category)
    @top_ten_cashflows = @cashflows.order(:date).limit(10)

end

如何在字符串插值中使用日期和短月份格式化日期。

标签: ruby-on-railsdate

解决方案


transaction.date.strftime('%b')

https://apidock.com/ruby/Date/strftime


推荐阅读