views:

49

answers:

1

I've been trying to do SEO friendly urls, and managed to get it work, but when I call index action on blogs, I get a weird "undefined method `parameterize' for nil:NilClass." The method works when using show method.

  #model
  def to_s
    title
  end

  def to_param
    "#{id}-#{to_s.parameterize}"
  end

  #controller
  @blogs = Blog.find.all

Screenshot of error http://www.freeimagehosting.net/image.php?83e76a260b.png

A: 

Turns out you can't call title.parameterize on to_param without error. So I added a permalink column and called parameterize on that.

#models/blog.rb
before_save :permalink

def to_param
 "#{id}-#{permalink}"
end

def permalink
 self.permalink = self.title.parameterize
end

And voila. I knew it was something really stupid.

Senthil