2013-12-03 2 views
3

Ruby on Rails 3, У меня есть переменная экземпляра, которую я хочу отобразить по-разному. Пример: @type - это «voip». Имя сохраняемого каталога. .Отображаемая переменная экземпляра с конкретной капитализацией

<%= @type %> 

Или

<%= @type.titleize %> 

Они будут отображать @type как «VoIP в первом примере и "Voip" во втором примере

Я сделал:

<%= link_to "VoIP" %> 

Что будет показывать точный «VoIP», как указано выше. Как это сделать с переменной экземпляра @ty ре? Я хочу, чтобы он показывал «VoIP». Благодарю.

ответ

3

Это не чистейший способ, которым я могу думать, но вы можете использовать an acronym inflector ...

Пример «Макдоналдс» в документации, вероятно, соответствовать вашим потребностям:

acronym 'McDonald' 
underscore 'McDonald' #=> 'mcdonald' 
camelize 'mcdonald' #=> 'McDonald' 

acronym 'VoIP' 
camelize 'voip' #=> 'VoIP' 
+0

Я думаю, что это отличный способ сделать это. По крайней мере, для меня, я хочу, чтобы эта строка была указана на сайте. Должен быть способ сделать это только на одной странице. Спасибо – DDDD

+0

Может ли кто-нибудь сообщить мне, как включить все правила перегиба? inflections.rb заявляет, что они не включены по умолчанию. – DDDD

0

Предполагая, что @type имеет значение «voip», вы можете использовать следующее:

@type.gsub("voip", "VoIP") 
Смежные вопросы