我希望此代码执行的操作是在已添加冲浪学校时以及if条件为真时执行if操作。当没有添加冲浪学校的时候,我想做一个“抱歉,找不到冲浪学校”的路线。
相反,即使if动作为真,此代码仍将显示else行。
<% @surfschools.each do |surfschool| %>
<% if surfschool.surfschoolcountry == 'AX' %>
<h3><%= link_to surfschool.surfschoolname, surfschool.surfschoolurl, target: '_blank' %></h3>
<p>Country: <%= surfschool.surfschoolcountry %></p>
<p>Address: <%= surfschool.surfschooladdress %></p>
<p>Contact Number: <%= surfschool.surfschoolnumber %></p>
<p>Contact E-mail: <%= surfschool.surfschoolemail %></p>
<% if current_user && surfschool.user == current_user %>
<%= link_to 'Update', edit_surfschool_path(surfschool) %>
<%= link_to 'Delete', surfschool_path(surfschool), method: :delete, data: {confirm: 'Are you sure?'} %>
<% end %>
<% else %>
<p>Sorry, no surf school found</p>
<% end %>
<% end %>
答案 0 :(得分:1)
好像你正在过滤冲浪学校的国家代码。因此,过滤掉国家/地区代码栏不 AX
的冲浪学校会更容易。
#in the controller
@surfschools = SurfSchool.where(surfschoolcountry: "AX")
#in the view
<% if @surfschools.count == 0 %>
<p>Sorry, no surf schools found</p>
<% else %>
<!-- your code here -->
<% end %>
这种方式更直接,也是数据驱动的。
答案 1 :(得分:0)
您还可以添加图像以引导用户到其他地方,例如:
<% if @surfschools.count == 0 %>
<%= link_to image_tag("sorry.png"), root_path %>