[Rails 기본] 화면 로드 오류 정보(NameError, LoadError)

3335 단어 RubyRails
이것은 두 번째 투고다.잘 부탁드립니다.
이번에는 개인 앱을 만들 때 발생하는 화면 읽기 오류에 대한 기사를 쓰고 싶습니다.

컨디션


Ruby: 2.5.1
RubyOnRais: 5.0.7

잘못된 내용


오류 내용에는 다음 두 가지가 있습니다.
① LoadError in EventsController#choise_artist
Unable to autoload constant Set_list, expected ~ FesLive-app/app/models/set_list.rb to define it.
② Name Error in EventsController#choise_artist
uninitialized constant EventsController:Setlist

해결책


① 해결 방법


우선 첫 번째 오류입니다. 오토로드가 안 된다고 합니다.
먼저 Rails의 autooloid는 명명 규칙에 따라 자동으로 Require 파일을 생성하는 기능입니다.
즉, 아래에 설명된 @set_lists=Setlist.all는 명명 규칙을 따르지 않았습니다.
실제로 rails의 명칭 규칙에서 클래스 이름에 대해 밑줄 긋기 ()사용할 수 없습니다.
따라서 Set리스트반은 오토로드가 안 된대요~
class EventsController < ApplicationController

  def choise_artist
    @set_lists = Set_list.all
    @event = Event.find(params[:id])
  end

end
따라서'@set_lists=Setlist.all'이면 ①의 오류를 돌파할 수 있다.
[참고] 잘못된 화면

② 해결 방법


학급명 표기법을 바꿀 수 있지만 이번에 NameError의 오류가 발생했습니다.
초기화되지 않아서☆학급사용불가
나는 학급 명칭을 지정하는 방법에 문제가 있는 것 같다는 것을 안다.
실제로 세트리스트 모델을 보러 가면 학급명이'세트리스트'와 L이다.
그래서 반명이 틀렸다고 한다.
class SetList < ApplicationRecord
  belongs_to :event
end
この「@set_lists = SetList.all」とすればこのエラーは突破できました。
[참고] 잘못된 화면

여기까지 읽어주셔서 감사합니다.
이해하기 어려운 점이나 조언이 있으면 댓글로 남겨주세요.그럼!
[참고 사이트]
https://qiita.com/hirokisoccer/items/4ba62a56b18eb834a8ee
https://wa3.i-3-i.info/word16120.html

좋은 웹페이지 즐겨찾기