#ruby-on-rails #ruby #ruby-on-rails-3
#ruby-on-rails #ruby #ruby-on-rails-3
Вопрос:
Как можно открыть и просмотреть текстовый файл с помощью rails?
Пример, который у меня есть test.txt:
Test test test test
Тогда у меня есть мой test.html.erb:
Here I want to view test.txt
Ответ №1:
Вы можете либо отобразить произвольный файл, либо использовать send_file
: 3.1 или < 3.1
Ответ №2:
Другая возможность:
Here is the test.txt file: <%= File.read("test.txt") %>
Ответ №3:
Вот это самое test.txt файл:
<%= File.read(File.join(Rails.root, 'your_folder','your_folder','test.txt'))%>
Комментарии:
1.
Rails.root
является aPathname
, так что вы можетеRails.root.join(...)
Ответ №4:
В некоторых случаях (когда файл не маленький и его загрузка связана с задержкой) я предпочитаю загружать содержимое страницы, а затем использовать jQuery
ajax-запрос для загрузки содержимого файла.
Например, допустим, у меня есть модель с атрибутом пути к файлу. В view
макете я делаю что-то вроде этого:
<pre data-source=" <%= (@file.path) %>"></pre>
Затем в соответствующем js
файле я загружаю контекст следующим образом:
$(document).ready ->
$.ajax(
url: $("pre").data("source")
context: document.body
).done (response) ->
$("pre").html response
return
return
Конечно, вы можете проверить документацию jQuery ajax для получения дополнительных опций. Например, вы можете отобразить pre
тег loading
следующим образом:
<pre data-source=" <%= (@file.path) %>"><div class="loading"></pre>
или используйте другие jQuery
анимации.