Rails using plural table names even though I told it to use singular
- by Jason Swett
I tried to run rake test:profile and I got this error:
... Table 'mcif2.accounts' doesn't exist: DELETE FROM `accounts`
I know accounts doesn't exist. It's called account.
I know Rails uses plural table names by default but here's what my config/environment.rb looks like:
# Load the rails application
require File.expand_path('../application', __FILE__)
# Initialize the rails application
McifRails::Application.initialize!
ActiveRecord::Base.pluralize_table_names = false
And here's what db/schema.rb looks like:
ActiveRecord::Schema.define(:version => 0) do
create_table "account", :force => true do |t|
t.integer "customer_id", :limit => 8, :null => false
t.string "account_number", :null => false
t.integer "account_type_id", :limit => 8
t.date "open_date", :null => false
So I don't understand why Rails still wants to call it accounts sometimes. Any ideas?
If it helps give any clues at all, here are the results of grep -ir 'accounts' *.