모델이 프로젝트에 이미 존재하는지 확인하는 방법을 알고 싶습니다.Ruby on Rails : 모델이 존재하는지 확인하는 방법
사용자가 동일한 모델 이름을 사용하여 프로그래밍 방식으로 모델을 만들려고 할 때 이미 존재하는지 확인해야합니까?
모델이 프로젝트에 이미 존재하는지 확인하는 방법을 알고 싶습니다.Ruby on Rails : 모델이 존재하는지 확인하는 방법
사용자가 동일한 모델 이름을 사용하여 프로그래밍 방식으로 모델을 만들려고 할 때 이미 존재하는지 확인해야합니까?
defined? ModelName
은 모델이 정의 된 경우 "상수"를 반환합니다.
defined?
은 (@Jiggneshh Gohel의 @Jiggneshh Gohel의 설명을 참조하십시오.) models
디렉토리에서 파일 이름을 확인할 수 있습니다.
files = Dir[Rails.root + 'app/models/*.rb']
models = files.map{ |m| File.basename(m, '.rb').camelize }
models.include? "User" => true
'defined? '는 일관된 결과를 반환하지 않는 것 같습니다. ' $가 레일 C 로드 개발 환경 (레일 4.2.0) 2.2.1 : 001> 정의 (사용자) => "상수" 2.2.1 : 002> 정의 아래의 코드를 확인하십시오? (인증 토큰) => nil을 2.2.1 : 003> 인증 토큰 => 인증 토큰 2.2.1 (연결을 설정하는 'AuthenticationToken.connection을'전화) : => "상수"004> 정의 (인증 토큰) 를? 2.2.1 : 005> ' –
동의합니다. 일부 상수는 참조 된 후에 만로드되는 것 같습니다. – Pandem1c