爲什麼我會得到一個未定義的方法錯誤,每當我使用的代碼塊:未定義的方法軌4
<%= @user_infos.website %>
但是當我使用的每個循環的工作?
<% @user_infos.each do |user| %>
<%= user.website %>
<% end %>
UserInfos控制器:
class UserInfosController < ApplicationController
before_action :set_user_info, only: [:show, :edit, :update, :destroy]
respond_to :html
def index
@user_infos = UserInfo.all
respond_with(@user_infos)
end
def show
respond_with(@user_info)
end
def new
@user_info = current_user.user_infos.build
redirect_to :back
end
def edit
end
def create
@user_info = current_user.user_infos.build(user_info_params)
@user_info.save
redirect_to :back
end
def update
@user_info.update(user_info_params)
respond_with(@user_info)
end
def destroy
@user_info.destroy
respond_with(@user_info)
end
private
def set_user_info
@user_info = UserInfo.find(params[:id])
end
def user_info_params
params.require(:user_info).permit(:website, :location)
end
end
首頁控制器:
class HomeController < ApplicationController
def index
@questions = Question.all.order("created_at desc")
end
def profile
@user = User.find(params[:id])
@answer = Answer.all.order("created_at")
@questions = Question.all.order("created_at")
@user_info = UserInfo.new
@user_infos = UserInfo.all.order("created_at desc")
end
end
我的意圖是不循環,但只是簡單的顯示縱斷面圖中的UER的信息。循環引起雙重段落,這當然不是我想要的。
這是因爲@user_infos是@user_info實例的數組。該數組沒有一個方法'網站',實例雖然。 –