问题
I have created a model Anonymous with command
rails g model Anonymous section_id:integer aid:string fake:bool active:bool
but table name in the migration is called anonymous
class CreateAnonymous < ActiveRecord::Migration
def change
create_table :anonymous do |t|
t.integer :section_id
t.string :aid
t.bool :fake
t.bool :active
t.timestamps
end
end
end
Am i right that pluralized form of Anonymous is Anomymous too ? (English is not my native language). How can i see what pluralized names Rails gives to my models ? Something like rake routes
?
回答1:
You can do this in the rails console.
$ "anonymous".pluralize
=> "anonymous"
or another example where the plural word is different.
$ "cookie".pluralize
=> "cookies"
回答2:
pluralize(count, singular, plural = nil) public
Attempts to pluralize the singular word unless count is 1. If plural is supplied, it will use that when count is > 1, otherwise it will use the Inflector to determine the plural form
Examples:
pluralize(1, 'person')
# => 1 person
pluralize(2, 'person')
# => 2 people
pluralize(0, 'person')
# => 0 people
for you
"anonymous".pluralize
回答3:
I'd just rename your model. Save yourself the pain and future debugging and just avoid this potential headache. You could use "Anonymouse" with plural "Anonymouses". Or think up a more clever name.
来源:https://stackoverflow.com/questions/13244176/ruby-on-rails-how-to-check-pluralized-and-single-form-of-names