1
我有這樣的代碼在我的個人資料顯示的看法:爲什麼我從show.js.erb文件中得到這個錯誤?
<div id='main_profile_column'>
<div id="video_div">
<% @videos.each do |video| %>
<%= render 'videos/video', :video => video %>
<% end %>
</div>
<%= paginate @videos %>
</div>
和我使用的是show.js.erb文件來呈現視頻,以實現AJAX分頁部分。我有這個在我的show.js.erb文件:
$("#video_div").html("<%= escape_javascript(render("videos/video")) %>");
這個代碼怎麼給我這個錯誤:
GET http://localhost:3000/profiles/45?page=2&_=1302255080024 500 (Internal Server Error)
我應該是什麼樣的代碼將在.js.erb文件?
下面是從日誌中的錯誤:
Started GET "/profiles/45?page=2&_=1302255923695" for 127.0.0.1 at Fri Apr 08 02:45:23 -0700 2011
Processing by ProfilesController#show as JS
Parameters: {"id"=>"45", "page"=>"2", "_"=>"1302255923695"}
Profile Load (0.2ms) SELECT "profiles".* FROM "profiles" WHERE "profiles"."id" = 45 LIMIT 1
Creating scope :page. Overwriting existing method Profile::Listener.page.
User Load (0.2ms) SELECT "users".* FROM "users" WHERE "users"."id" = 57 LIMIT 1
Rendered videos/_video.html.erb (1.3ms)
Rendered profiles/show.js.erb (3.0ms)
Completed in 172ms
ActionView::Template::Error (undefined method `model_name' for NilClass:Class):
1: <%= div_for video do %>
2: <div class="voting_div">
3: <%= link_to "⇑".html_safe, video_votes_path(:video_id => video.id, :type => "up"), :method => :post, :remote => true, :class => "up_arrow round #{current_user && (vote = current_user.votes_for(video)) && vote.value == 1 ? "voted" : "unvoted" }" %>
4: <div id="vote_display" class = "round">
app/views/videos/_video.html.erb:1:in `_app_views_videos__video_html_erb___358525845_2174681160_1885950'
app/views/profiles/show.js.erb:1:in `_app_views_profiles_show_js_erb__196650825_2174697160_0'
這是你從development.log或在瀏覽器中得到了錯誤? – 2011-04-08 06:43:21
from chrome debugger – 2011-04-08 06:47:06
在你的development.log中查看真實的錯誤 – 2011-04-08 06:47:56