Rails:丢失模板错误,但模板就在那里

时间:2011-07-25 00:20:05

标签: ruby-on-rails ruby-on-rails-3 routes

我正在使用jquery fullcalendar,并给它事件:'/ calendar / 1'来调用事件源。我的路线中有以下内容:

match 'calendar/:id' => 'schedules#calendar_feed'  

如果我输入地址栏 http://localhost:3000/calendar/1?start=1310886000&end=1311490800&_=1311385591892 它加载页面。如果我尝试加载页面并让fullcalendar调用url,则返回错误:

<p>Missing template schedules/calendar_feed with {:handlers=&gt;[:erb, :rjs, :builder, :rhtml, :rxml], :formats=&gt;[:xml], :locale=&gt;[:en, :en]} in view paths 
&quot;/Users/lukeconner/Dropbox/CFAdmin/app/views&quot;,
&quot;/Library/Ruby/Gems/1.8/gems/kaminari-0.12.4/app/views&quot;, 
&quot;/Library/Ruby/Gems/1.8/gems/devise-1.3.4/app/views&quot;</p>

我已经尝试过calendar_feed.xml.builder,calendar_feed.js.erb,calendar_feed.html.erb,无论我将视图文件命名为什么,它都会返回错误。

1 个答案:

答案 0 :(得分:1)

这里的问题很可能是你的日历插件要求js响应。如果您可以查看日志,您会看到如下内容:

Started GET "/calendar" for 127.0.0.1 at 2011-07-04 00:46:56 +0800
Processing by SchedulesController#calendar_feed as *JS*

或其他。如果它是JS,那么你需要做的就是告诉你的应用渲染一个json字符串或类似的东西:

respond_to do |format|
  format.js { #your calendar's expected response }
end