Meistens teste ich nie für Singularität oder Plural, ich wandle es nur in die Singular oder Pluralform, die ich benötige.
In Rails 2.3.x dies möglich war, so etwas wie dies auf diesem
plural_form = org_word.singularize.pluralize
singular_form = org_word.pluralize.singularize
Schreiben weiter arbeiten, eine Arbeitsfunktion ist einfach zu liefern:
require 'active_support'
def is_singular?(str)
str.pluralize.singularize == str
end
%w(word words rail rails dress dresses).each do |v|
puts "#{v} : #{is_singular?(v)}"
end
, die gibt die folgenden Ausgabe:
word : true
words : false
rail : true
rails : false
dress : true
dresses : false
In Schienen 4, mit den gegebenen Wörtern ist es jetzt viel einfacher. Sie können nur
plural_form = org_word.pluralize
singular_form = org_word.singularize
tun und damit die Funktion wird viel einfacher als gut:
require 'active_support'
def is_singular?(str)
str.singularize == str
end
Das Problem "dress" .singularize ist hier gelöst: https: //rails.lighthouseapp.com/projects/8994/tickets/2399-incorrect-inflectors-for-business-or-ness # ticket-2399-5 – kikito