Skip to content

Error in db:migrate on a fresh database when using act_wizardly_for #4

@matellis

Description

@matellis

I'm using the Lockdown gem with my app. When I drop, create & migrate my database I get this error:

/project/vendor/gems/wizardly-0.1.8.9/lib/wizardly/wizard/configuration.rb:67:in `create':
 Cannot convert :user to model constant for User: Mysql::Error: Table 'project_dev.users'
  doesn't exist: SHOW FIELDS FROM `users`

It's a chicken and egg: the class can't load because there is no User table and there will be no User table until I've ran db:migrate. Commenting out the act_wizardly_for allows me to migrate.

I've seen this before with eager_class_loading but this was fixed in Rails 2.3. (I'm running Rails 2.3.4 and Ruby 1.8.7.)

I fixed it with a nasty hack that disables Lockdown when I'm running db:migrate but I'm pretty sure this will bite me some other way in the future.

I posted an example here http://github.com/matellis/wizardly-examples and filed a bug with Lockdown here http://stonean.lighthouseapp.com/projects/33317/tickets/35

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions