title: 'undefined method' when converting attribute in Module
body: <p>Pretty new to working with Modules. I can't get my Module method to convert a user inputed string ("1:48.55") to a float before I validate it and save it to the db. Not sure what I'm doing wrong... </p>
  
  <p><strong>config/application.rb</strong> </p>
  
  <pre><code>config.autoload_paths += %W(#{config.root}/lib/modules/)
  </code></pre>
  
  <p><strong>lib/modules/sport_time.rb</strong>  </p>
  
  <pre><code>module SportTime
    extend ActiveSupport::Concern
  
    attr_accessor :goal_time
  
    included do
      before_validation :sporty_save
    end
  
    def self.stringify_race(secs)
      m = (secs/60).floor
      s = (secs - (m*60))
      sprintf("%02d:%.2f\n",m,s)
    end
  
    private
    def sporty_save
      self.goal_time = self.goal_time.floatify_race(goal_time)  ---(line 12)---
    end
  
    def floatify_race(str)
      dirty = str.split(":")
      min = dirty[0]
      sec = dirty[1]
      seconds = (min.to_i * 60) + sec.to_f
      seconds.round(4)
    end
  end
  </code></pre>
  
  <p><strong>app/models/event.rb</strong></p>
  
  <pre><code>class Event &lt; ActiveRecord::Base
    include SportTime
    validates_presence_of :event_type, :race_length, :course, :goal_time, :user_id
    attr_accessible :event_type, :race_length, :course, :goal_time, :user_id
    belongs_to :user
  end
  </code></pre>
  
  <p><strong>db/seed.rb</strong></p>
  
  <pre><code>Event.create(
    :event_type =&gt; 'Run',
    :race_length =&gt; 800,
    :course =&gt; 'outdoor',
    :goal_time =&gt; '01:48.55',
    :user_id =&gt; user_one.id
  )
  </code></pre>
  
  <p><strong>ERROR:</strong></p>
  
  <pre><code>rake aborted!
  undefined method `floatify_race' for "01:48.55":String
  /Users/myname/work/projectname/lib/modules/sport_time.rb:12:in `sporty_save'
  </code></pre>
  
  <p>What am I doing wrong?</p>