Возможно ли в Rails 3.0 визуализировать партиал, где имя партиала хранится в переменной?
Я пытаюсь сделать что-то похожее на:
<%= escape_javascript(raw render :partial => @partial_name, :locals => { :value => @value} )%>
Обновлено с более подробной информацией
В моем приложении у меня есть набор моделей, использующих наследование нескольких таблиц, например, допустим, у меня есть базовая модель 'cupcake' и варианты, такие как 'AwesomeCupcake' и 'AlrightCupcake'.
Каждая из этих моделей имеет свой собственный частичный элемент для отображения информации и использует схему именования: «_awesome_cupcake» и «_alright_cupcake».
На странице у меня есть ссылки на каждый тип кексов, в котором я хочу, чтобы контроллер принимал параметр и динамически выводил, какую часть визуализировать. Следующее работает как хотелось бы, если (в файле new.js.erb) я заменяю '@partial_name' чем-то вроде 'awesome_cupcake'.
Вот еще немного информации о том, как расположены мои компоненты:
application.js
$('#set_cupcake').click(function () {
$.getScript('/cupcakes/new.js?cupcake_type=awesome');
});
cupcakes_controller.rb
def new
cupcake_type = "#{params[:cupcake_type].capitalize}Cupcake"
if Object.const_defined? cupcake_type
@cupcake = cupcake_type.constantize.new
@partial_name = "#{params[:cupcake_type]}_cupcake"
end
end
Вид / кексы / new.js.erb
$('#cupcakes')
.append("<%= escape_javascript(raw render :partial => @partial_name, :locals => { :cupcake => @cupcake } ) %>")