Domanda

Sto scrivendo un plugin che necessita di alcune inflessioni proprie. Usando le rotaie 2.3 che hanno incorporato i motori, dove dovrei posizionare le mie flessioni?

È stato utile?

Soluzione

Consiglio di aggiungere un file separato (inflections.rb) nel plugin della directory lib dei plugin. Dovresti essere in grado di caricare il file inflections.rb dal plugin aggiungendo quanto segue all'inizio del file Ruby del plugin.

require 'inflections"

Il tuo file inflections.rb dovrebbe seguire il formato fornito come esempio nei nuovi progetti Rails:

# Sample Inflections    
# ActiveSupport::Inflector.inflections do |inflect|
#   inflect.plural /^(ox)$/i, '\1en'
#   inflect.singular /^(ox)en/i, '\1'
#   inflect.irregular 'person', 'people'
#   inflect.uncountable %w( fish sheep )
# end

Altri suggerimenti

AGGIORNAMENTO : per chiunque abbia lo stesso problema ma utilizza Rails 5, ecco la risposta giusta.

Non posizionare il file inflections.rb nella cartella plugin / lib , ma nella cartella plugin / config / initializer .

Quindi scrivi semplicemente le tue flessioni (ad es. cliché / cliché ):

ActiveSupport::Inflector.inflections do |inflect|
    inflect.irregular 'cliche', 'cliches'
end
Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top