如何限制网址:"#{id}#{name}" .parameterize

时间:2015-09-13 22:07:12

标签: ruby-on-rails ruby url model limit

当用户创建valuation(又名值)时,由于此方法,该估值的:name成为网址的一部分:

valuation.rb

def to_param
  "#{id} #{name}".parameterize
end

例如,如果用户创建了一个值:

  

再次进入战斗。我永远都知道的最后一场好战。生活和   在这一天死去。在这一天生活和死亡。

网址为http://www.personalcontrolcenter.com/valuations/33-once-more-into-the-fray-the-last-good-fight-i-ll-ever-know-live-and-die-on-this-day-live-and-die-on-this-day

那太久了。我希望将limit改为15个字符。以下是我的尝试:

#1

def to_param
  "#{id} #{name}".limit(15).parameterize # undefined method limit error
end

#2

def to_param
  ["#{id} #{name}".limit(15)].parameterize # undefined method limit error
end

#3

def to_param
  "#{id} #{name}".parameterize.limit(15) # undefined method limit error
end

1 个答案:

答案 0 :(得分:1)

"#{id} #{name}".parameterize.first(15)