views:

33

answers:

1

Hi Everyone,

I am trying to get my rails application running on my web server, but when I run the rake db:migrate I get the following error:

r

oot@oak [/home/macandco/rails_apps/survey_manager]# rake db:migrate
(in /home/macandco/rails_apps/survey_manager)
==  Baseapp: migrating ========================================================
-- create_table(:settings, {:force=>true})
   -> 0.0072s
-- create_table(:users)
   -> 0.0072s
-- add_index(:users, :login, {:unique=>true})
   -> 0.0097s
-- create_table(:profiles)
   -> 0.0084s
-- create_table(:open_id_authentication_associations, {:force=>true})
   -> 0.0067s
-- create_table(:open_id_authentication_nonces, {:force=>true})
   -> 0.0064s
-- create_table(:roles)
   -> 0.0052s
-- create_table(:roles_users, {:id=>false})
   -> 0.0060s
rake aborted!
An error has occurred, all later migrations canceled:

555 5.5.2 Syntax error. g9sm2526951gvc.8

Has anyone come across this before?

Thanks,

Danny

Main Migration file

c

lass Baseapp < ActiveRecord::Migration
  def self.up

    # Create Settings Table
    create_table :settings, :force => true do |t|
      t.string :label
      t.string :identifier
      t.text   :description
      t.string :field_type, :default => 'string'
      t.text   :value

      t.timestamps
    end

    # Create Users Table
    create_table :users do |t|
      t.string :login, :limit => 40
      t.string :identity_url      
      t.string :name, :limit => 100, :default => '', :null => true
      t.string :email, :limit => 100
      t.string :mobile
      t.string :signaturenotes
      t.string :crypted_password, :limit => 40
      t.string :salt, :limit => 40
      t.string :remember_token, :limit => 40
      t.string :activation_code, :limit => 40
      t.string :state, :null => :false, :default => 'passive'      
      t.datetime :remember_token_expires_at
      t.string :password_reset_code, :default => nil
      t.datetime :activated_at
      t.datetime :deleted_at
      t.timestamps
    end

    add_index :users, :login, :unique => true

    # Create Profile Table
    create_table :profiles do |t|
      t.references :user

      t.string :real_name
      t.string :location
      t.string :website
      t.string :mobile

      t.timestamps
    end

    # Create OpenID Tables
    create_table :open_id_authentication_associations, :force => true do |t|
      t.integer :issued, :lifetime
      t.string :handle, :assoc_type
      t.binary :server_url, :secret
    end

    create_table :open_id_authentication_nonces, :force => true do |t|
      t.integer :timestamp, :null => false
      t.string :server_url, :null => true
      t.string :salt, :null => false
    end

    create_table :roles do |t|
      t.column :name, :string
    end

    # generate the join table
    create_table :roles_users, :id => false do |t|
      t.column :role_id, :integer
      t.column :user_id, :integer
    end

    # Create admin role and user
    admin_role = Role.create(:name => 'admin')

    user = User.create do |u|
      u.login = 'admin'
      u.password = u.password_confirmation = 'XXXXXXXXX'
      u.email = '[email protected]'
    end

    user.register!
    user.activate!

    user.roles << admin_role
  end

  def self.down
    # Drop all BaseApp
    drop_table :settings
    drop_table :users
    drop_table :profiles
    drop_table :open_id_authentication_associations
    drop_table :open_id_authentication_nonces
    drop_table :roles
    drop_table :roles_users
  end
end
+1  A: 

The 555 5.5.2 Syntax error is from the email being sent after creating the user. Looks like you still have email sending issues.

On a side note... you shouldn't need to send emails during migrations.

Tony Fontenot
It shouldn't be sending emails during migrations? Where does it state that?
dannymcc
ahh, I see. I removed this section: # Create admin role and user admin_role = Role.create(:name => 'admin') user = User.create do |u| u.login = 'admin' u.password = u.password_confirmation = 'XXXX' u.email = '[email protected]' end user.register! user.activate! user.roles << admin_roleand it ran successfully.Thanks, now I can try and work out why it STILL isnt running :DThanks,Danny
dannymcc
I meant I didnt realise it was sending emails during migration and was asking where it stated that in the code by the way.
dannymcc