[RUBY-ON-RAILS] 왜 액세스 액티브에 사용 "자기"/ 모델 속성 레일?
RUBY-ON-RAILS왜 액세스 액티브에 사용 "자기"/ 모델 속성 레일?
내 응용 프로그램 자체를 통하여. 사용자의 이름을 참조 할 필요는 없습니다. 이름은 잘 작동합니다.
의도 한대로 왜 다음 코드는 일에 자기를 필요로 하는가?
class User< ActiveRecord::Base
before_save :validate_name
def validate_name
if self.name.nil? || self.name.empty?
self.name= "Mr. No Name"
end
end
그런데, 나는 validates_presence_of이 (가) 막아 방지하기 위해 사용될 수 있다는 것을 알고,하지만 난에 이름을 지정하지 않으면 디폴트로 저장합니다.
3.0.7 레일.
해결법
-
==============================
1.종종 자기의 사용은 변수로 잘못 해석하기 메서드 호출 및하지로 그 인식 루비를 강제하는 것입니다. 방법이라는 일에 대한 사전 지식없이 = 다음 일 = 변수 할당과 같은 루비에 "X"를 찾습니다. self.day = "X"항상 메서드 호출입니다.
종종 자기의 사용은 변수로 잘못 해석하기 메서드 호출 및하지로 그 인식 루비를 강제하는 것입니다. 방법이라는 일에 대한 사전 지식없이 = 다음 일 = 변수 할당과 같은 루비에 "X"를 찾습니다. self.day = "X"항상 메서드 호출입니다.
사용자 클래스 파일을 구문 분석 한 후 이름과 이름이 = 방법이 동적으로 추가되기 때문에이 문제가되는 이유입니다. 모델이 관련 데이터베이스 필드의 메이크업 방법입니다 사용하지만 user.rb 파일을 구문 분석 한 후 이러한 상황이 발생하면 먼저 레일을 수행합니다.
from https://stackoverflow.com/questions/10127393/why-use-self-to-access-activerecord-rails-model-properties by cc-by-sa and MIT license
'RUBY-ON-RAILS' 카테고리의 다른 글
[RUBY-ON-RAILS] (: 방법 => : 삭제) 작동하지 않는 3 LINK_TO 레일 (0) | 2020.02.20 |
---|---|
[RUBY-ON-RAILS] 클립에 여러 파일을 업로드 (0) | 2020.02.20 |
[RUBY-ON-RAILS] 배열의 PostgreSQL의 경우 모든 (0) | 2020.02.20 |
[RUBY-ON-RAILS] 레일 방법은 어디 그 DateTime 개체로`datetime_select`에서 변환 데이터? (0) | 2020.02.20 |
[RUBY-ON-RAILS] URL에 표시 3 UTF-8 쿼리 문자열은 레일? (0) | 2020.02.20 |