У меня есть простой Rails модель, которая состоит из всего лишь одно поля под названием «кэш»:Рендер кэшированной страницы в Rails
class CreateCache < ActiveRecord::Migration
def change
create_table :caches do |t|
t.belongs_to :statistic
t.string :cache
t.timestamps null: false
end
end
end
сама модель:
class Cache < ActiveRecord::Base
belongs_to :statistic
end
Поле «кэш» состоит из HTML-документ, и мне нужно найти способ визуализации его в отдельном окне (без какого-либо макета из Rails), когда пользователь нажимает на ссылку в представлении.
Есть ли способ сделать это?
Ну, для отключения раскладку вы можете использовать 'рендеринга макета: false' в своем действии контроллера. Так как вы хотите отобразить контент, который вы, возможно, захотите посмотреть в 'render body:" raw_data ", хотя. См. Http://guides.rubyonrails.org/layouts_and_rendering.html для получения дополнительной информации –
Но если то, что вы делаете, это кеширование визуализированного представления какого-либо ресурса, есть лучшие способы, поскольку сохранение/извлечение HTML-документа в/из базы данных довольно медленный. Также нет необходимости изобретать велосипед http://guides.rubyonrails.org/caching_with_rails.html – max