Почему мои заявления if не работают? - PullRequest
0 голосов
/ 04 января 2012

Извините, если это основа, или я упускаю что-то очевидное здесь.Я новичок в rails.

Я использую HAML, но я не знаю, в этом проблема, все разбирается, просто мои заявления игнорируются.

- unless @posts.nil?
  - @posts[0..2].each do |post|
    .tumblr_post{ :class => post['type']}
      - type = post['type']
      - if type == 'photo'
        %h3 IMAGE
        %img{:src => post['photo_url1']}
        = raw post['vid']
        .tumblr_text
          .post_date= post['date']
          %h3= post['title']
          = raw post['photo_caption']
      - if post['type'] == 'regular'
        .tumblr_text
          .post_date= post['date']
          %h3= post['title']
          %h4 OMGNOT A PIC
          = raw post['photo_caption']

Я пыталсянесколько способов, и я не понимаю, почему это не работает.Код для печати поста ['type'] как части класса div работает нормально.Но это не будет оцениваться в заявлении if.

Мой идеал здесь - это иметь возможность устанавливать различные div в зависимости от типа записи, чтобы избежать пустых мест или div в моем конечном коде.

Спасибо за любые советы или помощь, которые могутНаправь меня в правильном направлении!

1 Ответ

0 голосов
/ 05 января 2012

Как заметил @MeTheWalrus, проблема заключалась в том, что мой пост ['type] не был строкой и поэтому не оценивался как true.

Я проверил это с помощью (post [' type '] == 'photo'). inspect (и получил 'false'), поэтому просто преобразуем его в строку:

post['type].to_s 

Сортировал это и сделал его верным!

...