不知道爲什麼有時某些用戶得到缺少模板錯誤時,我明確指定remote: true
在請求中。我無法重現錯誤。ActionView :: MissingTemplate發生在讚賞#創建
缺失模板appreciations/create
,logged_in/create
,application/create
與{:locale=>[:en], :formats=>[:html], :handlers=>[:erb, :builder, :haml]}
。搜查:...
我的視圖代碼
<%= link_to 'Appreciate', feed_appreciations_path(feed), method: 'post', :remote => true %>
控制器代碼
class AppreciationsController
respond_to :js
before_filter :load_feed
def create
@appreciation = @feed.appreciations.new(params[:appreciation])
@appreciation.save
end
...
end
我有views/appreciations/create.js.erb
定義和工作。
在出現在我的要求
HTTP_ACCEPT : text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8
action_dispatch.request.formats : [text/html]
爲什麼請求不來作爲一個js請求,因爲我已經指定remote: true
?
感謝您的答覆。但它經常發生,所以我傾向於認爲其他事情正在發生。 – anu
不同意你的觀點,即使它不影響你,你也不能忽視錯誤。我實際上在相同的上下文中發現了完全相同的錯誤,我正在挖掘以發現問題。將在這裏發佈答案 – Erowlin
@Erowlin我期待看到你的方法。不過,我仍然相信,你無法解決這個問題。如果用戶操縱網址,我認爲他想要做一些「骯髒」的事情,他不應該這樣做。在這種情況下,我們在HTTP中有狀態碼404(請參閱RFC 2616) – awenkhh