Ответ 1
Помогает ли send_file делать то, что вы хотите?
например.
get '/myspecialroute' do
send_file 'special.html'
end
У меня есть простая синатра-приложение. Все, что я хочу сделать, это использовать его как оболочку для обслуживания статического файла HTML по определенному маршруту. Моя структура каталогов выглядит так:
/directory
myhtmlfile.html
app.rb
Мой файл app.rb
выглядит следующим образом:
require 'sinatra'
get '/myspecialroute' do
html :myhtmlfile # i know html is not a method, but this is what I would like to do
end
Как я могу написать это, чтобы сохранить файл html в виде простого html файла, но служить ему по специальному маршруту?
Благодаря этому я узнал несколько разных способов сделать это:
get '/myspecialroute' do
File.read('myhtmlfile.html')
end
Это откроет, прочитает, закроет, а затем вернет файл в виде строки.
Или есть вспомогательная функция, чтобы сделать этот очиститель:
get '/myspecialroute' do
send_file 'myhtmlfile.html'
end
Помогает ли send_file делать то, что вы хотите?
например.
get '/myspecialroute' do
send_file 'special.html'
end
Вы можете сделать это следующим образом:
get '/myspecialroute' do
redirect '/myspecialroute.html'
end
Это работа для меня:
require 'rubygems'
require 'sinatra'
get '/index.html' do
@page_title = 'Home'
@page_id = 'index.html'
erb :'index.html', { :layout => :'layout.html' }
end