Rails::Initializer.run do |config|
config.active_record.schema_format = :sql
in environment.rb did the trick… that and granting superuser privs
to the test user. Thanks!
I’d also suggest that what you’re proposing to do is not a very ‘Rails’ thing to do.
Oooh… yeah, I fundamentally reject that premise. In fact, Rails
should default to using
pg_dump --schema-only for generating schema
for PostgreSQL, and likely doing the same for all database vendors.
Rails’ schema dump isn’t complete and relying on it for completeness
should horrify people.
One of the “strong opinions” of Rails is that
you should consolidate your coding into a single language, and DB
management should, if at all possible, take place in the application,
not the db.
I know that’s the opinion of Rails, but unfortunately MySQL brain rot
has been successful in negatively impacting the design of Rails.
validates_* is an organic hack to workaround MySQL deficiencies. I
like that ruby checks data, but ruby can’t provide data guarantees -
only the database can.
However, some things that are
difficult to do in Rails are difficult on purpose.
Grr… “‘mother, may I,’ anti-foot shooting” is a design argument of
convenience, not because of correctness, elegance, or completeness.
Just some outside perspective. -sc