La visibilidad de métodos en Ruby (métodos públicos, protegidos y privados) se ha explicado bien en lugares como esta publicación de blog . Pero en Ruby on Rails parece ligeramente diferente de lo que sería en una aplicación Ruby normal debido a la forma en que está configurado el marco. Entonces, en modelos, controladores, ayudantes, pruebas, etc. de Rails, ¿cuándo es / no es apropiado usar métodos protegidos o privados?
Editar : Gracias por las respuestas hasta ahora. Entiendo el concepto de protegido y privado en Ruby, pero estoy buscando más una explicación de la forma típica en que se usan esos tipos de visibilidad dentro del contexto de las diversas partes de una aplicación Rails (modelos, controladores, ayudantes, pruebas) . Por ejemplo, los métodos del controlador público son métodos de acción, los métodos protegidos en el controlador de la aplicación se utilizan para los "métodos auxiliares" a los que deben acceder varios controladores, etc.