Повторно использовать файлы js.rjs в Rails? - PullRequest
4 голосов
/ 02 сентября 2010

У меня есть файл .js.rjs, который должен использоваться во многих местах.

Как я могу использовать его снова?

Например, в моем файле .js.rjs мне нужно что-то вроде этого:

page << ( render "widely_used_stuff" )

где "wide_used_stuff" - это файл wide_used_stuff.js.rjs, содержащий код, используемый во многих местах.

Кроме того, мне нужно передать переменные в wide_used_stuff.js.rjs, например, так:

page << ( render "widely_used_stuff", :locals => {:custom_script => my_script} )   

Обновление 1

Я пробовал следующие способы из файла .js.rjs:

render "widely_used_stuff"

Rails жалуется на это, потому что требует, чтобы это «частичное» было «erb» частичным

следующим образом:

render :file => "controller/widely_used_stuff.js.rjs"

Rails не жалуется, но "wide_used_stuff.js.rjs" не вставляется в файл .js.rjs, который называется render. Я проверил ответ XHR.

Я думаю, проблема в файле вызывающего абонента .js.rjs, потому что это не erb ...

Ответы [ 3 ]

2 голосов
/ 20 января 2011
page << render(:file => "common/index.js.rjs")

Я надеюсь, что может помочь.

2 голосов
/ 02 сентября 2010

Привет, ты пробовал render "controller/widely_used_stuff.js.rjs"?

1 голос
/ 02 сентября 2010
render :partial => 'view_directory/widely_used_stuff.js.rjs'
...