0
작은 네트워킹 사이트의 예를 만들려고하고 있는데 사용자로 로그인하면 리디렉션되어 프로필이 표시되지만 다음 오류가 발생합니다.Ruby on Rails 네트워킹 웹 사이트에 로그인 한 후 NoMethodError
NoMethodError in User#indexShowing app/views/user/index.html.erb where line #5 raised:
undefined method `screen_name' for nil:NilClass Extracted source (around line #5):
2: Your basic information 3: 4:
5:
- Screen name: <%= @user.screen_name %>
6:- Email: <%= @user.email %>
7:- Password: **********
8:
미리 감사!
내 컨트롤러에? I는이 두 가지있다 : 를 @user = User.new은 (PARAMS는 [: 사용자])과 사용자 User.find_by_screen_name_and_password = (@ user.screen_name @ user.password) – noloman
User.new는 레코드를 생성하지 않는다 . 생성을 사용하거나 새 + 저장을 쌍으로 사용해야합니다. 레코드가 없으면 find_by_XXXX는 nil을 반환합니다. 따라서 실제로 그 두 가지를 연속적으로 실행하는지는 확실하지 않지만 그렇다면 제대로 작동하지 않습니다. – nirvdrum
좋아, 간단한 @user = User.find (session [: user_id])로 해결되었습니다. 그럼에도 불구하고 사용자 로그인을 위해 로그인 버튼을 누르면 사용자 프로필로 리디렉션되지 않습니다. 나는 그걸로 조금 더 시간을 할애해야한다고 생각해. 고마워. – noloman