Ответ 1
Кажется, он не может быть короче, Ref. Если вы слишком долго это чувствуете, вы можете скрыть его в вспомогательном методе и просто передать различные параметры?
Чтобы сделать частичное в Rails 3, выполните следующие действия:
render 'my_partial', :my_object => my_value
Чтобы получить частичный результат в виде строки, выполните следующие действия:
render_to_string(:partial => 'my_partial', :layout => false,
:locals => {:my_object => my_value})
Можно ли написать последнее более короткое? (например, опустить :partial
или :locals
, как я делаю с render
) (я пытался, но получал ошибки...)
Кажется, он не может быть короче, Ref. Если вы слишком долго это чувствуете, вы можете скрыть его в вспомогательном методе и просто передать различные параметры?
Иногда вы могли бы сделать что-то вроде
render_to_body "path_to_file"
и он пропускает макет, но все же вам нужно использовать переменные экземпляра внутри вашего частичного.
Вы всегда можете добавить свой собственный метод к ApplicationController
и сделать его доступным как вспомогательный метод, если вам нужно использовать его в представлениях.
Я бы использовал Mailer для этого. И тогда сделайте.
MyMailer.my_method.body.encoded. Вы также можете использовать помощники.