[錯誤記錄]undefined method `each' for nil:NilClass

Published on:

位置
http://localhost:3000/jobs 頁面

錯誤訊息
undefined method `each' for nil:NilClass

問題描述
檢視jobs的畫面時報錯

debug思路
一般each這個method出現沒有定義的話,肯定是前面的object沒有撈到任何內容,照著這個方向查問題就出來了
去檢查 <% @jobs.each do |job| %> 裡的 @jobs

錯誤排除方式:
app/controllers/jobs_controller.rb

改完後正常

其他觀察:
index要打 @jobs 是要顯示所有刊登工作,是複數
show 打 @job 是要顯示某個選定的工作,單數
而我們在/jobs_controller 定義了 index的@jobs ,在views裡的index就要用@jobs,否則view無法呈現資料
是MVC的觀念運用(Model 負責數據 View 負責呈現 Controller 負責做決定 )
當我們的controller向資料庫請求資料時,model也是按照類似的方法往自己的資料庫把資料找出來教給controller,controller再教給view

Comments

comments powered by Disqus