2013-06-20 3 views

ответ

4

__FILE__ даст вам имя файла

<% __FILE__.split("/").last.sub(/^_/, "") %> 
+1

Спасибо, я знал о '__FILE__' переменной. Я надеялся, что есть что-то локальное, как «partial_counter». – Aaron

2

В вашей парциальное:

<%= partial_class(__FILE__) %> 

В application_helper:

def partial_class(partial) 
     partial.split(".").first.split("/").last.sub(/^_/, "") 
    end 

Результат: partial is '_customer-existing.html.erb', output is 'customer-existing'. Я использую это постоянно для имен классов в оболочке div внутри частичного, так что я могу использовать одно и то же имя в jquery, чтобы показать/скрыть частичное.

Пример:

<div class='<%= partial_class(__FILE__) %>'> 
    stuff here that will be show/hideable by partial name. 
</div>