2014-09-06 7 views
0

개체를 저장하고 업데이트 할 때 반환 값은 부울 유형 - true 또는 false입니다.개체 작성시 true/false를 반환합니다.

create 메서드가 개체를 값으로 반환하므로 생성이 실패했는지 여부를 어떻게 알 수 있습니까?

+0

을 사용하십시오 시도 할 수 --------- ---------- – Numbers

+1

[Ruby on Rails의 활성 레코드 반환 값이 중복 될 수 있습니까?] (http://stackoverflow.com/questions/23975835/ruby-on-rails-active-record- 반환 값 - 생성 실패시) – lurker

+0

감사. 그리고 삭제 된 주석에 대한 응답 :'nil'을 (실패한 생성의) 반환 값을 저장하는 변수와 비교할 때'false'가됩니다. – Numbers

답변

1

당신은 당신이 아니라 당신이 강타 버전을 사용할 수있는 오류가 발생 할 경우

@object = Blah.create() 
@object.persisted? # true or false 

또한, 구조

@object = Blah.create!() 
+0

'valid?'와'persisted? '사이의 차이점은 무엇입니까 – Numbers

+0

'valid'는 객체가 유효한지 검사하지만'persisted'는 객체가 저장되었는지 여부를 검사합니다. 객체가 저장 된 후에 나중에 유효성 검사기를 추가하거나 유효성 검사를 사용하여 저장하면됩니다. @ object.save (validate : false)' –