Ruby on rails получает данные из хэша - PullRequest
0 голосов
/ 09 июня 2011

я просто не понимаю, где я сделал не так. пожалуйста, выделите их для меня. Я тестирую график, используя грубость.

в ReportController

def mygruff
    @gr = Hash.new
    @gr["jan"] = 3
    @gr["feb"] = 6

    logger.info({#@gr.keys})
end

в моем журнале я получил 'janfeb'

в виде mygruff

<%if @gr.blank?%>
   <%=No gruff%>
<%else%>
   <%=@gr.keys%>
<%end%>

На странице mygruff я не получу никакого ворчания. Но я получаю это в своем журнале.

Я пытался

object.empty? 
true

object.blank?
true

object.nil?
false

как получить хеш на мой взгляд? пожалуйста, покажи мне путь. спасибо.


    def stat2
      @cus_t = Hash.new

      a = Gruff::Bar.new('500x350')
      a.theme = {
        :colors => ['#138F6A','#330000','#0aaafd','#FF0000','#00CD00','#ff6602', '#3bb003', '#1e90af', '#efba30', '#0aaaac'],
        :marker_color => '#aaa',
        :background_colors => ['#eaeaea', '#fff']
      }
      a.hide_title = true


      @customer = Customer.find(:all)
      @customer.each do |custs|
      @g_cus = Casedf.count(:all, :conditions=> "customer_id=" + custs.id.to_s)    
      a.data(custs.companyname, @g_cus)
     #@cus_t[custs.companyname] = @g_cus
      @cus_t.store(custs.companyname,@g_cus)

      end

      a.write("#{RAILS_ROOT}/public/images/customer.png") 
      $logger.info("hash keys #{@cus_t.keys}")


  end # end def

Вот что я сделал на мой взгляд:

<table>
<% if @cus_t.nil?%>
    <tr>
    <td colspan="6">No cus added so far<%=@cus_t.keys%>l</td>
    </tr>
<%else%>
<tr>
<td><%=@cus_t.keys%></td>
</tr>

<%end%>

</table>

Поэтому, когда я перехожу на страницу stat2, я ничего не получаю, но в моих логах ключи распечатываются. Я в тупике, пожалуйста, помогите.

Ответы [ 2 ]

0 голосов
/ 09 июня 2011

В Ruby у хэшей нет метода blank?. Этот метод добавлен Rails, и в нем может быть ошибка. Пожалуйста, попробуйте это на ваш взгляд:

<% if @gr.empty? %>
  No gruff
<% end %>
<%= @gr.inspect %>  <!-- print regardless to see if there is data there -->
0 голосов
/ 09 июня 2011

Привет Есть ли у вас в вашем действии

def mygruff
  @gr = Hash.new
  @gr["jan"] = 3
  @gr["feb"] = 6

  logger.info({#@gr.keys})
end

мне было не понятно из комментария

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...