# Weird error when running migration

**URL:** <https://www.ruby-forum.com/t/weird-error-when-running-migration/94320>\
**Category:** Rails\
**Created:** [November 12, 2005, 12:49pm UTC](https://www.ruby-forum.com/t/weird-error-when-running-migration/94320 "2005-11-12T12:49:47Z")\
**Posts on this page:** 5\
**Page:** 1

<div class="post-metadata">

**Author:** ![contact](https://www.ruby-forum.com/letter_avatar_proxy/v4/letter/c/5f9b8f/32.png) [@contact](https://www.ruby-forum.com/u/contact)\
**Post date:** [November 12, 2005, 12:49pm UTC](https://www.ruby-forum.com/t/weird-error-when-running-migration/94320/1 "2005-11-12T12:49:47Z")

</div>

I’m having some troubles running what should be a simple migration yet  
I’m  
getting the error:

rake aborted!  
wrong number of arguments (1 for 0)

Here is my migration (the up() method):

# initial permissions

Permission.create :name =\> ‘NEWS\_VIEW’  
Permission.create :name =\> ‘NEWS\_CREATE’  
Permission.create :name =\> ‘NEWS\_EDIT’  
Permission.create :name =\> ‘NEWS\_DELETE’  
Permission.create :name =\> ‘NEWS\_CATEGORY\_CREATE’  
Permission.create :name =\> ‘NEWS\_CATEGORY\_EDIT’  
Permission.create :name =\> ‘NEWS\_CATEGORY\_DELETE’  
Permission.create :name =\> ‘NEWS\_POST\_COMMENT’  
Permission.create :name =\> ‘NEWS\_DELETE\_COMMENT’  
Permission.create :name =\> ‘KB\_VIEW’  
Permission.create :name =\> ‘KB\_CATEGORY\_CREATE’  
Permission.create :name =\> ‘KB\_CATEGORY\_EDIT’  
Permission.create :name =\> ‘KB\_CATEGORY\_DELETE’  
Permission.create :name =\> ‘KB\_ARTICLE\_CREATE’  
Permission.create :name =\> ‘KB\_ARTICLE\_EDIT’  
Permission.create :name =\> ‘KB\_ARTICLE\_DELETE’

# administrator role

admin\_role = Role.create :name =\> ‘Administrator’, :description =\> ‘Top  
level role with full permissions’  
Permission.find(:all).each do |p|  
admin\_role.permissions \<\< p  
end

# create root user

root\_user = User.create(  
:first\_name =\> ‘Root’,  
:surname =\> ‘User’,  
:short\_name =\> ‘Root’,  
:username =\> ‘rootuser’,  
:password =\> ‘rootpass’,  
:email\_address =\> ’ removed\_email\_address@domain.invalid’  
)  
root\_user.roles \<\< admin\_role  
root\_user.save

The line its falling over on is the root\_user = User.create method. I  
don’t  
think its because of the way I’ve laid it out over several lines - I’ve  
tried it with and without the parentheses and all on one line as well.  
I’ve  
also tried just setting one or two of the fields.

Here is my schema definition for the user table:

create\_table “users”, :force =\> true do |t|  
t.column “surname”, :string, :limit =\> 100  
t.column “first\_name”, :string, :limit =\> 100  
t.column “short\_name”, :string, :limit =\> 30  
t.column “username”, :string, :limit =\> 30  
t.column “password”, :string, :limit =\> 40  
t.column “email\_address”, :string  
end  
add\_index “users”, [“id”], :name =\> “id”, :unique =\> true

And here is a backtrace:

/usr/lib/ruby/gems/1.8/gems/activerecord-1.13.0/lib/active\_record/base.rb:465:in  
`initialize' /usr/lib/ruby/gems/1.8/gems/activerecord-1.13.0/lib/active_record/base.rb:465:in`create’  
./db/migrate//002\_initial\_user\_data.rb:29:in `up' /usr/lib/ruby/gems/1.8/gems/activerecord-1.13.0/lib/active_record/migration.rb:211:in`migrate’  
/usr/lib/ruby/gems/1.8/gems/activerecord-1.13.0/lib/active\_record/migration.rb:206:in  
`each' /usr/lib/ruby/gems/1.8/gems/activerecord-1.13.0/lib/active_record/migration.rb:206:in`migrate’  
/usr/lib/ruby/gems/1.8/gems/activerecord-  
1.13.0/lib/active\_record/migration.rb:173:in  
`up' /usr/lib/ruby/gems/1.8/gems/activerecord-1.13.0/lib/active_record/migration.rb:164:in`migrate’  
/usr/lib/ruby/gems/1.8/gems/rails-0.14.3/lib/tasks/databases.rake:3  
/usr/lib/ruby/gems/1.8/gems/rails-0.14.3/lib/tasks/databases.rake:2:in  
`call' /usr/lib/ruby/gems/1.8/gems/rake-0.6.2/lib/rake.rb:202:in`execute’  
/usr/lib/ruby/gems/1.8/gems/rake-0.6.2/lib/rake.rb:202:in `each' /usr/lib/ruby/gems/1.8/gems/rake- 0.6.2/lib/rake.rb:202:in`execute’  
/usr/lib/ruby/gems/1.8/gems/rake-0.6.2/lib/rake.rb:180:in `invoke' /usr/lib/ruby/gems/1.8/gems/rake-0.6.2/lib/rake.rb:1454:in`run’  
/usr/lib/ruby/gems/1.8/gems/rake-0.6.2/lib/rake.rb:1454:in `each' /usr/lib/ruby/gems/1.8/gems/rake-0.6.2/lib/rake.rb:1454:in`run’  
/usr/lib/ruby/gems/1.8/gems/rake-0.6.2/bin/rake:7  
/usr/bin/rake:18

Help! I’m stumped.

Cheers  
Luke

---

<div class="post-metadata">

**Author:** ![contact](https://www.ruby-forum.com/letter_avatar_proxy/v4/letter/c/5f9b8f/32.png) [@contact](https://www.ruby-forum.com/u/contact)\
**Post date:** [November 12, 2005, 12:49pm UTC](https://www.ruby-forum.com/t/weird-error-when-running-migration/94320/2 "2005-11-12T12:49:48Z")

</div>

What does your User model look like? Have you defined an initialize  
method for it? (That’s kind of what it looks like, from the backtrace  
anyway). If so, please note that the initialize method is special for  
ActiveRecord, and you should use the after\_find/after\_initialize  
hooks to do on-creation initialization, rather than overriding the  
initialize method.

- Jamis

---

<div class="post-metadata">

**Author:** ![contact](https://www.ruby-forum.com/letter_avatar_proxy/v4/letter/c/5f9b8f/32.png) [@contact](https://www.ruby-forum.com/u/contact)\
**Post date:** [November 12, 2005, 12:49pm UTC](https://www.ruby-forum.com/t/weird-error-when-running-migration/94320/3 "2005-11-12T12:49:48Z")

</div>

Ah! Thanks Jamis, yes, I did have an initialize method. I will change  
this.

Cheers  
Luke

---

<div class="post-metadata">

**Author:** ![contact](https://www.ruby-forum.com/letter_avatar_proxy/v4/letter/c/5f9b8f/32.png) [@contact](https://www.ruby-forum.com/u/contact)\
**Post date:** [November 12, 2005, 12:49pm UTC](https://www.ruby-forum.com/t/weird-error-when-running-migration/94320/4 "2005-11-12T12:49:48Z")

</div>

Hi,

I was wondering if anyone has any experience with livetree, or knows  
where to find people that do.

thanks  
-Chris

---

<div class="post-metadata">

**Author:** ![contact](https://www.ruby-forum.com/letter_avatar_proxy/v4/letter/c/5f9b8f/32.png) [@contact](https://www.ruby-forum.com/u/contact)\
**Post date:** [November 12, 2005, 12:49pm UTC](https://www.ruby-forum.com/t/weird-error-when-running-migration/94320/5 "2005-11-12T12:49:48Z")

</div>

sorry about the subject the first time…
