반응형
Ruby on Rails에서 String 클래스를 확장하려면 코드를 어디에 넣어야합니까?
Ruby on Rails에서는 다음과 같은 메서드를 추가해야합니다.
class String
def capitalize_first
# ...
end
end
파일이 어디로 이동해야하는지 궁금하십니까? (어떤 디렉토리와 파일 이름, 그리고 초기화 코드가 필요합니까?) 이것은 Rails 3.0.6 프로젝트 용입니다.
나는 항상 core_ext
내 디렉토리에 디렉토리를 추가합니다 lib
.
사용자 지정 확장을로드하기 위한 이니셜 라이저 를 만듭니다 (예 :) config/initializers/core_exts.rb
. 그리고 그 안에 다음 줄을 추가하십시오.
Dir[File.join(Rails.root, "lib", "core_ext", "*.rb")].each {|l| require l }
확장 기능은 다음과 같습니다.
lib/core_ext/string.rb
class String
def capitalize_first
# ...
end
end
config / initializers / string.rb에서 할 수 있습니다.
class String
def capitalize_first
# ...
end
end
앱을 다시 시작하는 것 외에 필요한 모든 것입니다.
Rails 3.1의 가이드 라인은 다음과 같습니다.
http://guides.rubyonrails.org/plugins.html#extending-core-classes
기본 규칙을 따르면 초기화 설정을 엉망으로 만들 필요가 없습니다.
반응형
'Program Tip' 카테고리의 다른 글
특정 phpunit xml testsuite를 실행하는 방법은 무엇입니까? (0) | 2020.10.21 |
---|---|
PHP 버퍼 ob_flush () 대 flush () (0) | 2020.10.21 |
matplotlib / numpy를 사용한 선형 회귀 (0) | 2020.10.20 |
JSON을 CSV 형식으로 변환하고 변수에 저장하는 방법 (0) | 2020.10.20 |
범위 입력 슬라이더를 세로로 표시하는 방법 (0) | 2020.10.20 |