0

次のコードがあります。

def analytics 
    @user_registrations = User.count(:conditions => ["created_at >= ?", 30.days.ago.to_date], group: "date(created_at)")
    @daily_count = []
    30.times do |day|
      @daily_count << [Date.today - day, @user_registrations['#{Date.today - day}']]
    end
  end

以下で実行すると、以下<%= simple_format @user_registrations.to_yaml %>が生成されます。

--- !omap 
- '2012-08-23': 11

11値を取り出して、daily_count 配列に入れたいと思います。

どうやってやるの?

アップデート:

<%= simple_format @user_registrations.to_yaml %>
<%= simple_format @daily_count.to_yaml %>

画像の結果:

**ここに画像の説明を入力**

4

1 に答える 1

1

置き換えるだけです:

@daily_count << [Date.today - day, @user_registrations['#{Date.today - day}']]

と:

@daily_count << [Date.today - day, @user_registrations["#{Date.today - day}"] || 0]

一重引用符は #{} エスケープ構文をリテラルとして扱い、二重引用符はそれを評価します。

于 2012-08-23T16:45:13.887 に答える