2013-06-24 29 views
5

Tôi đã viết lại mã html của mình bằng đường ray content_tag giây và bây giờ tôi muốn thêm các câu lệnh if cho chúng.Thêm câu lệnh if vào khối cuối cùng

Trước khi tôi có:

<% if ... %> 
    <div class='...'> 
    ... 
    </div> 
<% end %> 

Bây giờ tôi có 2 loại khối này:

<%= content_tag(:div, ..., class: 'some_class') if ... %> 

này hoạt động ok. Nhưng khi tôi cố gắng thêm if-tuyên bố do-end khối nó không thành công:

<%= content_tag(:div, class: 'some_class') if ... do %> 
    ... 
<% end %> 

tôi nhìn thấy này, thay vì div nội dung:

<div>{:class=>"some_class"}</div> 

Cảm ơn!

Trả lời

12

Bạn phải sử dụng như:

<%if ... %> 
    <%= content_tag(:div, class: 'some_class') do %> 
    ... 
    <% end %> 
<% end %> 

Hoặc sử dụng câu lệnh if sau khi khối:

<%= content_tag(:div, class: 'some_class') do %> 
    ... 
<% end if .......%> 
4

Hãy thử

<%= content_tag(:div, class: 'some_class') do %> 
    ... 
<% end if ... %> 
Các vấn đề liên quan