[RUBY-ON-RAILS] 4 레일 : 모델의 네임없이 하위 경로에 레일 모델을 구성?
RUBY-ON-RAILS4 레일 : 모델의 네임없이 하위 경로에 레일 모델을 구성?
이런 식으로 뭔가를 할 수 있을까요?
app/models/
app/models/users/user.rb
app/models/users/education.rb
목표는 / 응용 프로그램 / 모델이 더 나은 폴더,하지만 모델 네임 스페이스하지 않고 구성하는 것입니다.
레일 3에 대한 답이없는 질문은 여기에 있습니다 : 하위 폴더의 3.2.9 및 모델 레일.
네임 스페이스와 테이블 _ 이름을 지정합니다 (4 모델의 하위 폴더를 레일) 작동하는 것 같다,하지만 난 네임 스페이스없이이 작업을 수행 할 수.
해결법
-
==============================
1.기본적으로 레일은 자동로드 경로 모델 디렉토리의 하위 폴더를 추가하지 않습니다. 어느 단지 네임 스페이스 모델을 찾을 수있는 이유 - 네임 스페이스에 볼 수있는 서브 디렉토리를 조명한다.
기본적으로 레일은 자동로드 경로 모델 디렉토리의 하위 폴더를 추가하지 않습니다. 어느 단지 네임 스페이스 모델을 찾을 수있는 이유 - 네임 스페이스에 볼 수있는 서브 디렉토리를 조명한다.
자동로드 경로에 응용 프로그램 / 모델의 모든 하위 폴더를 추가하려면 설정 / application.rb에 다음을 추가합니다
config.autoload_paths += Dir[Rails.root.join("app", "models", "{*/}")]
더 복잡한 응용 프로그램 / 모델 디렉토리 함께 응용 프로그램의 모든 하위 폴더를 globing의 위의 방법이있는 경우 또는, / 모델이 제대로 작동하지 않을 수 있습니다. 이 경우에, 당신은 좀 더 명시 적 인 만 지정하는 하위 폴더를 추가하여이 문제를 얻을 수 있습니다 :
config.autoload_paths += Rails.root.join("app", "models", "<my_subfolder_name1>") config.autoload_paths += Rails.root.join("app", "models", "<my_subfolder_name2>")
레일 4.1로, 응용 프로그램 생성기는 기본적으로 config.autoload_paths 포함되지 않습니다. 그래서, 위에서 정말로에서 설정 / application.rb 속해 않습니다 것을.
대신 {**} {이용 * /} 위 코드에서 수정 자동로드 경로 예. 이에 대한 자세한 내용은 muichkine의 코멘트를 읽어 보시기 바랍니다.
from https://stackoverflow.com/questions/18934115/rails-4-organize-rails-models-in-sub-path-without-namespacing-models by cc-by-sa and MIT license
'RUBY-ON-RAILS' 카테고리의 다른 글
[RUBY-ON-RAILS] 정의되지 않은 메서드 '구성': 오류 발사는 서버를 레일 (0) | 2020.02.14 |
---|---|
[RUBY-ON-RAILS] 여러 foreign_keys와 모델 has_many 레일 (0) | 2020.02.14 |
[RUBY-ON-RAILS] 액티브에서 만든에서 ID를 재정의 (0) | 2020.02.13 |
[RUBY-ON-RAILS] 레일에 어떻게 CSV 파일로 레코드를 반환합니다 (0) | 2020.02.13 |
[RUBY-ON-RAILS] force_ssl 레일에 무엇입니까? (0) | 2020.02.13 |