Как генерировать и ссылаться на произвольный файл? - PullRequest
1 голос
/ 29 сентября 2010

Вот что я пытаюсь сделать. Допустим, пользователь просматривает представление foo для действия foo контроллера bar, и у меня есть переменная с именем @userName.

bar_controller.rb

class BarController
  def foo
    @userName = getUserName();
  end

foo.html.erb

Hi mom!

Я хочу создать поле с именем <%= @userName %>.myExt с информацией Hi, I'm <%= @userName %>! и поместить ссылку на него в представлении. Как мне это сделать?

т.е. Окончательный:

bar_controller.rb

def foo
  @userName = getUserName();
  create_myExt_file(@userName);

foo.html.erb

Hi mom! Click <%= generate link to @userName.myExt, "here" %> to view!

<@ имя_пользователя> .myExt

Hi, I'm <@userName>!

В идеале файл @ userName.myExt не обязательно должен быть записан на жесткий диск, а может быть создан из шаблона или чего-то еще. Я не знаю, как это сделать!

Спасибо!

1 Ответ

1 голос
/ 29 сентября 2010

Сначала сгенерируйте файл в виде строки, например:

s = get_file_contents

Затем, в вашем контроллере, отправьте его клиенту вместе с предлагаемым именем файла:

send_data s, :filename => 'example.text'

Наконец, чтобы использовать шаблон ERB, вы можете просто render_to_string.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...