Как сделать в соответствии с синтаксисом if в файле представления в Rails - PullRequest
0 голосов
/ 14 сентября 2018

Я бы хотел отобразить только пост с вводом числовой строки в соответствии с синтаксисом if.

Но мой код получает все сообщения.

index.html.erb

<% @fleamarkets.each do |x| %> // @fleamarket == Fleamarket.all
  <% if x.number == '1' %>
    <%= render 'fleamarkets/card1', :x => x %>
  <% elsif x.number == '2' %>
    <%= render 'fleamarkets/card2', :x => x %>
  <% else %>
    <%= render 'fleamarkets/card3', :x => x %>
  <% end %>
<% end %>

_card1.html.erb

<h4 class="card-title" style="text-align: center; border-bottom: 1px solid black;"><%= x.title %></h4>

Ответы [ 2 ]

0 голосов
/ 14 сентября 2018

Попробуйте это ... Кроме того, я заметил, что вы сравниваете "число" с '1' как строка (у вас есть кавычки).Вполне возможно, что вам нужно сделать это вместо каждого оператора if: if x.number == 1 (обратите внимание, нет кавычек)

<% @fleamarkets.each do |x| %>
  <% if x.number == '1' %>
    <%= render partial: 'fleamarkets/card1', locals: {x: x} %>
  <% elsif x.number == '2' %>
    <%= render partial: 'fleamarkets/card2', locals: {x: x} %>
  <% else %>
    <%= render partial: 'fleamarkets/card3', locals: {x: x} %>
  <% end %>
<% end %>
0 голосов
/ 14 сентября 2018

Попробуйте удалить оператор if и заменить на:

<%= render "fleamarkets/card#{x.number}", x: x %>
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...