右偏,現在我有一個幫手:Rake任務,以創建Rails的JSON數據
def blog_posts
Rails.cache.fetch("blog_posts", :expires_in => 30.minutes) do
url = URI('http://www.xxxxxxxx.com/blog/?json=get_recent_posts')
request = Net::HTTP.get(url)
response = JSON.parse(request)
response['posts'].take(4)
end
rescue => e
logger.error "Error retrieving blog posts!"
logger.error "#{e.message}\n#{e.backtrace.join("\n")}"
[]
end
而且我的觀點:
<% blog_posts.each do |blog| %>
<div class="col col-3">
<a class="search-page-links" href="<%= blog['url'] %>" target="_blank">
<img class="post-image" src="<%= blog['thumbnail'] %>">
<br/><br/>
<%= blog['title'].html_safe %>
</a>
</div>
<% end %>
工作正常。除了我們不希望數據在頁面加載時被拉取,因爲我們不能總是依靠源代碼。該計劃是將Rake任務添加到部署過程中,以便靜態數據可以在每個部署中的部分導軌上進行更新,並將其部署到視圖中。我怎麼能這樣做呢?
我建議您將提取的數據存儲在數據庫中,而不是。每次你想更新這個視圖時更新你的應用程序代碼庫看起來很痛苦。 –
假設數據庫現在不是一個選項(不是「我的」應用程序,不是我的規則排序情況)。我們每天部署,這部分只會實際每週更改,因爲'最近的帖子'不是很頻繁。所以我們不會部署更新部分。相反,當我們部署我們想部分更新如果碰巧有變化/更新與帖子 – user3127502