내 응용 프로그램에 Dwellings
및 Roomies
이 있습니다. Dwelling
보기에 일부 인증을 구축 중입니다. 현재 dwelling
의 roomies
은 특정 데이터를 볼 수 있어야합니다. 다른 모든 사용자는 다른보기를 볼 수 있습니다. users
입니다.컨트롤러 Throwing에 정의 된 메서드 NoMethodError
이 기능을 활성화하려면 Users Controller
에 is_roomie?
메서드를 만들었습니다. 방법은 다음과 같습니다 : 다음과 같이
## is_roomie? method in Users_Controller.rb ##
def is_roomie?
roomie_ids = []
@dwelling.roomies.each do |r|
roomies_ids << r.id
end
roomie_ids.include?(current_user.id)
end
나는 Dwelling
보기에서이 메서드를 호출 :이 구현 한 후 페이지를로드
## show.html.erb (Dwelling) ##
....
<% if current_user && current_user.is_roomie? %>
....
, 나는 다음과 같은 NoMethoderror 수 :
을NoMethodError in Dwellings#show
Showing >/Volumes/UserData/Users/jraczak/Desktop/Everything/rails_projects/Roomie/roomie/app/views/dwellings/show.html.erb where line #5 raised:
undefined method `is_roomie?' for #User:0x00000102db4608>
일부 배경에서는 Dwelling
메서드로 시도했지만 User
모델로 옮겨서 사용할 수 없습니다. 모든 통찰력에 미리 감사드립니다!
이것은 훌륭하게 작동합니다. 첫 번째 단락에 설명 된 실제 문제를 완전히 이해한다고 말하지는 않습니다. 즉, UsersController 객체가 무엇인지 이해하지 못합니다.하지만이를 읽으려고합니다. 내로드 블록을 수정 해 주셔서 감사합니다. – justinraczak
users_controller.rb 맨 위에 컨트롤러가'class UsersController