Método para alterar o texto do resultado de um boolean
|
|
Tchê, tenho um campo boolean então como posso definir um método para que ao mostrar o resultado do mesmo na view, não apareça ‘true’ ou ‘false’ e sim ‘sim’ e ‘não’? Agradeço, |
|
|
Cara basta colocar um helper na application_helper assim: e lah na view vc chama o metodo assim Assim ele mostra sim ou não ao invés do true ou false.. Qualquer coisa avisa pra gente… |
|
|
Weldys, era exatamente isso que eu precisava, funcionou beleza :) |
|
|
Tamo aê pra ajudar e ser ajudado mesmo… :) |
|
|
Ham… isso é o melhor meio de fazer isso? Não dá para sobrecarregar uma função na qual sempre que a view tentar imprimir um valor boleano, troca-se por “Sim” ou “Não” ? |
|
|
Dá pra fazer isso aqui: Mas não sei se o Rails não usa o “to_s” dos booleans pra alguma outra coisa, pode causar conflito. Outro jeito é sobrescrever o método “h” que é usando pra evitar ataques XSS e deveria ser usado no output de qualquer jeito. Aí ficaria muito parecido com o que o Weldys mostrou, mas com o nome do método chamado “h” Uma terceira maneira seria usar um engine alternativo como o HAML ou o Erubis que fazem algum processamento com os dados embutidos (normalmente pra evitar ataques XSS) e sobrescrever os métodos que eles usam pra isso. Só não sei se alguma dessas soluções vale o esforço :) |
|
|
Hum… o TrueClass e o FalseClass podem ser adicionadas ao Brazilian Rails e seus métodos trocados para to_s_br, assim como já é o Date lá. Acho que ficaria legal :) |

