mam następujące:szyny - collection_select wybraną wartość, jeśli została zdefiniowana?
<%= f.collection_select :role_id, roles, :id, :name, :prompt => true, :selected => 2 %>
Problem jest tylko chcę wybraną wartość 2, jeśli wartość @ permission.role_id jest zerowa.
więc próbowałem:
<%= f.collection_select :role_id, roles, :id, :name, :prompt => true, {:selected => 2 if @permission.role_id.nil?} %>
ale wykonane Rails zły. Jak mogę uczynić warunek wybraną wartością na podstawie tego, czy oddzielna zmienna jest zerowa czy nie?
Dzięki
to wydaje się niepowodzeniem z błędem zera, jeżeli atrybut obiektu jest zerowa – Rubytastic
try owijania że ostatnia wartość hash w nawiasach. Czy korzystasz z niestandardowego tłumacza? : selected => (@ permission.role_id || 2) w ten sposób, jeśli rola id jest zerowa, zwraca 2. – saneshark