2009-10-05 8 views
0

Je viens de mettre à jour Snow Leopard et je suis allé éditer du code sur une application Rails héritée (1.2.5) et j'ai trouvé que les vues provoquaient un plantage lors du rendu de l'aide textuelle 'truncate'. Je les ai sortis et ça s'est bien passé. Comment réparez-vous ceci? Existe-t-il d'autres méthodes susceptibles de voir le même problème?Comment réparer l'assistant de texte Rails 'truncate' après la mise à niveau vers Snow Leopard?

+0

Quelles sont les erreurs consignées? – nfm

+0

méthode indéfinie 'longueur 'pour Enumerable Enumerator sur text_helper.rb: 50: dans' truncate' – bwizzy

Répondre

1

J'ai trouvé ce morceau de code qui semble être le correctif, mais je me demande s'il y a une façon moins hackish de le faire.

# place the following code at the end of your config/environment.rb 

module ActionView 
    module Helpers 
    module TextHelper 
     def truncate(text, length = 30, truncate_string = "...") 
     if text.nil? then return end 
     l = length - truncate_string.chars.to_a.size 
     (text.chars.to_a.size > length ? text.chars.to_a[0...l].join + truncate_string : text).to_s 
     end 
    end 
    end 
end 
+0

Je pense que c'est probablement la meilleure façon de le faire. Les versions Rails inférieures à 2.2 ne sont pas compatibles avec Ruby 1.8.7. –

Questions connexes