5

Parece que con rieles/AR y los métodos Inflector añadido a String por ActiveSupport, yo esperaría que por defecto,¿La inflexión correcta de los rieles del subrayado es 'subrayar'?

Nested::ClassDerived::FromAR.name.tableize == Nested::ClassDerived::FromAR.table_name 

Pero en realidad tableize llamadas underscore y underscore en realidad no subrayan la clase anidada :: separador, reemplazándolo con un / para hacer una ruta de acceso. Tal vez este método debería llamarse pathify?

De todos modos, necesito subrayados reales. Así que estoy pensando en la definición de un nuevo método String inflector:

def new_inflector 
    underscore.gsub('/', '_') 
end 

que en realidad subrayar la cadena de nombre de clase anidada.

Por lo tanto, mi pregunta es, ¿cuál es la inflexión adecuada de 'underscore' para nombrar correcta y convencionalmente mi nuevo método de inflector, sin configuración. ¿Sería 'underscoreize' (siguiendo la convención establecida por 'tableize') o 'underscorize'? ¿O quizás underscoreify?

Cualquier idea apreciada.

+0

si está leyendo esto y le gusta esta pregunta, por favor lo votó :) – tribalvibes

Respuesta

8

¿Ha intentado parametrizar con un guión bajo como separador?

parameterize('_') 
+0

por lo que está sugiriendo que utilice p. Ej. '" Bletch :: FooBar ".underscore.parameterize ('_')' para obtener el resultado deseado de '" bletch_foo_bar "'? ¿Qué tal 'underscore.gsub ('/', '_')' - ¿Eso también funcionaría? – tribalvibes

Cuestiones relacionadas