I am trying to add a method to my *seeds.rb* so that I don't have to write a bunch of verbose code. However, depending on the placement of the `create_deliverable` method I get one of two error messages when running `db:setup`.

When method is before call

> 
> rake aborted!
>  private method 'create\_deliverable' called for #
> 
> 
> 

When method is after call

> 
> rake aborted!
>  undefined method `create\_deliverable' for #
> 
> 
> 

Is it not possible to uses methods in *seeds.rb*? Am I somehow calling the method incorrectly (I've tried calling with and without the `self.`)?

**Method**

```
def create_deliverable(complexity, project_phase_id, deliverable_type_id)
  Deliverable.create(:name => (0...8).map{65.+(rand(25)).chr}.join,
      :size => 2 + rand(6) + rand(6),
      :rate => 2 + rand(6) + rand(6),
      :deliverable_type_id => deliverable_type_id,
      :project_phase_id => project_phase_id,
      :complexity => complexity)
end

```

**Calling Code**

```
@wf_project.project_phases.each do |phase|
  DeliverableType.find_by_lifecycle_phase(phase.lifecycle_phase_id).each do
    |type|
    self.create_deliverable("Low", type.id, phase.id)

    self.create_deliverable("Medium", type.id, phase.id)

    self.create_deliverable("High", type.id, phase.id)
  end
end

```