Pregunta

Tengo dicho código en mi opinión:

<% @items.each do |item| %>
<tr<%= raw(item.presence ? '' : ' class="opaque"') %>>
...
<td><%= item.presence ? 'Yes' : 'No' %></td>
</tr>
<% end %>

esta es la solicitud en el controlador:

@items = Item.where(:type_id => @type.id).order('brand ASC, name ASC').limit(limit).offset((@page-1)*limit)

campo 'presencia' es sólo BOOL, nula en el primer artículo A pesar de que el campo presencia del primer elemento adquirido es nula, no vuelve atr clase para la primera fila (como si no lo es nula o verdadero), pero el segundo cheque vuelve justo valor ( 'No'). En las otras filas con valores falsos o nulo devuelve valores correctos en ambas comprobaciones. ¿Es un error, o que estoy haciendo mal Smth?

Carriles 3.0.0, Postgres 8.4

¿Fue útil?

Solución

no añadir el? a ayuda presencia ...

<% @items.each do |item| %>
<tr<%= raw(item.presence? ? '' : ' class="opaque"') %>>
...
<td><%= item.presence? ? 'Yes' : 'No' %></td>
</tr>
<% end %>
Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top