Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

Rails article helper - "a" or "an"

Does anyone know of a Rails Helper which can automatically prepend the appropriate article to a given string? For instance, if I pass in "apple" to the function it would turn out "an apple", whereas if I were to send in "banana" it would return "a banana"

I already checked the Rails TextHelper module but could not find anything. Apologies if this is a duplicate but it is admittedly a hard answer to search for...

like image 783
Will Ayd Avatar asked Mar 21 '11 18:03

Will Ayd


2 Answers

None that I know of but it seems simple enough to write a helper for this right? Off the top of my head

def indefinite_articlerize(params_word)
    %w(a e i o u).include?(params_word[0].downcase) ? "an #{params_word}" : "a #{params_word}"
end

hope that helps

edit 1: Also found this thread with a patch that might help you bulletproof this more https://rails.lighthouseapp.com/projects/8994/tickets/2566-add-aan-inflector-indefinitize

like image 159
concept47 Avatar answered Oct 17 '22 09:10

concept47


There is now a gem for this: indefinite_article.

like image 15
gerwitz Avatar answered Oct 17 '22 09:10

gerwitz