Hi, I’ve been having some problem with the new features in fixtures
included in rails 2.0.2.
The problem I’m having is although my test run fine, i’m unable to
import them into the db using rake db:fixtures:load
This is the error i’m getting:
rake aborted!
PGError: ERROR: column “admin_roles” of relation “admin_users” does not
exist
LINE 1: …ERT INTO admin_users (“salt”, “crypted_password”,
"admin_rol…
^
: INSERT INTO admin_users (“salt”, “crypted_password”, “admin_roles”,
“login”, “email”) VALUES (E’eca03dde78af4419efb984b1c1ebce8ab9446ac0’,
E’bc907667ec4a1d826f3c0cbda775083af9a8d328’, E’admin_role’, E’admin’,
E’[email protected]’)
/usr/lib/ruby/gems/1.8/gems/activerecord-2.0.2/lib/active_record/connection_adapters/abstract_adapter.rb:150:in
log' /usr/lib/ruby/gems/1.8/gems/activerecord-2.0.2/lib/active_record/connection_adapters/postgresql_adapter.rb:407:in
execute’
/usr/lib/ruby/gems/1.8/gems/activerecord-2.0.2/lib/active_record/connection_adapters/abstract/database_statements.rb:140:in
insert_fixture' /usr/lib/ruby/gems/1.8/gems/activerecord-2.0.2/lib/active_record/fixtures.rb:633:in
insert_fixtures’
/usr/lib/ruby/gems/1.8/gems/activerecord-2.0.2/lib/active_record/fixtures.rb:570:in
each' /usr/lib/ruby/gems/1.8/gems/activerecord-2.0.2/lib/active_record/fixtures.rb:570:in
insert_fixtures’
/usr/lib/ruby/gems/1.8/gems/activerecord-2.0.2/lib/active_record/fixtures.rb:516:in
create_fixtures' /usr/lib/ruby/gems/1.8/gems/activerecord-2.0.2/lib/active_record/fixtures.rb:516:in
each’
/usr/lib/ruby/gems/1.8/gems/activerecord-2.0.2/lib/active_record/fixtures.rb:516:in
create_fixtures' /usr/lib/ruby/gems/1.8/gems/activerecord-2.0.2/lib/active_record/connection_adapters/abstract/database_statements.rb:66:in
transaction’
/usr/lib/ruby/gems/1.8/gems/activerecord-2.0.2/lib/active_record/fixtures.rb:514:in
create_fixtures' /usr/lib/ruby/gems/1.8/gems/activerecord-2.0.2/lib/active_record/connection_adapters/postgresql_adapter.rb:374:in
disable_referential_integrity’
/usr/lib/ruby/gems/1.8/gems/activerecord-2.0.2/lib/active_record/fixtures.rb:505:in
create_fixtures' /usr/lib/ruby/gems/1.8/gems/activerecord-2.0.2/lib/active_record/base.rb:1198:in
silence’
/usr/lib/ruby/gems/1.8/gems/activerecord-2.0.2/lib/active_record/fixtures.rb:504:in
create_fixtures' /usr/lib/ruby/gems/1.8/gems/rails-2.0.2/lib/tasks/databases.rake:157 /usr/lib/ruby/gems/1.8/gems/rails-2.0.2/lib/tasks/databases.rake:156:in
each’
/usr/lib/ruby/gems/1.8/gems/rails-2.0.2/lib/tasks/databases.rake:156
/usr/lib/ruby/gems/1.8/gems/rake-0.8.1/lib/rake.rb:546:in call' /usr/lib/ruby/gems/1.8/gems/rake-0.8.1/lib/rake.rb:546:in
execute’
/usr/lib/ruby/gems/1.8/gems/rake-0.8.1/lib/rake.rb:541:in each' /usr/lib/ruby/gems/1.8/gems/rake-0.8.1/lib/rake.rb:541:in
execute’
/usr/lib/ruby/gems/1.8/gems/rake-0.8.1/lib/rake.rb:508:in
invoke_with_call_chain' /usr/lib/ruby/gems/1.8/gems/rake-0.8.1/lib/rake.rb:501:in
synchronize’
/usr/lib/ruby/gems/1.8/gems/rake-0.8.1/lib/rake.rb:501:in
invoke_with_call_chain' /usr/lib/ruby/gems/1.8/gems/rake-0.8.1/lib/rake.rb:494:in
invoke’
/usr/lib/ruby/gems/1.8/gems/rake-0.8.1/lib/rake.rb:1931:in invoke_task' /usr/lib/ruby/gems/1.8/gems/rake-0.8.1/lib/rake.rb:1909:in
top_level’
/usr/lib/ruby/gems/1.8/gems/rake-0.8.1/lib/rake.rb:1909:in each' /usr/lib/ruby/gems/1.8/gems/rake-0.8.1/lib/rake.rb:1909:in
top_level’
/usr/lib/ruby/gems/1.8/gems/rake-0.8.1/lib/rake.rb:1948:in
standard_exception_handling' /usr/lib/ruby/gems/1.8/gems/rake-0.8.1/lib/rake.rb:1903:in
top_level’
/usr/lib/ruby/gems/1.8/gems/rake-0.8.1/lib/rake.rb:1881:in run' /usr/lib/ruby/gems/1.8/gems/rake-0.8.1/lib/rake.rb:1948:in
standard_exception_handling’
/usr/lib/ruby/gems/1.8/gems/rake-0.8.1/lib/rake.rb:1878:in run' /usr/lib/ruby/gems/1.8/gems/rake-0.8.1/bin/rake:31 /usr/bin/rake:19:in
load’
/usr/bin/rake:19
I have this two fixtures:
admin_users.yml
admin:
login: admin
email: [email protected]
salt: eca03dde78af4419efb984b1c1ebce8ab9446ac0
crypted_password: bc907667ec4a1d826f3c0cbda775083af9a8d328 # admin
admin_roles: admin_role
editor:
login: editor
email: [email protected]
salt: 50e776d5c45cadb66b8f85d7f4414d56deb1a025
crypted_password: b67d504587dbefa525cfd1c4e6af294a068fa095 # editor
admin_roles: editor_role
moderador:
login: moderador
email: [email protected]
salt: 90d48b947ea3b92b117c106773745cf04b2aa892
crypted_password: bc907667ec4a1d826f3c0cbda775083af9a8d328 # moderador
activation_code: adminscode # only if you’re activating new signups
admin_roles: moderador_role
admin_roles.yml
admin_role:
name: admin
editor_role:
name: editor
moderador_role:
name: moderador
The user model habtm roles, like this:
class Admin::User < ActiveRecord::Base
set_table_name ‘admin_users’
---------------------------------------
The following code has been generated by role_requirement.
You may wish to modify it to suit your need
has_and_belongs_to_many :admin_roles, :class_name => ‘Admin::Role’,
:join_table => “admin_roles_admin_users”, :foreign_key =>
“admin_user_id”, :association_foreign_key => “admin_role_id”
…
Does anybody know what am I doing wrong?
Using postgresql, and rails 2.0.2