2012-09-11 4 views
0

이것은 아마도 가장 기본적인 질문 중 하나입니다.하지만 저는 여전히 stackoverflow가 논리를 올바르게 얻는 가장 좋은 방법이라고 생각했습니다.레일 : 데이터베이스에서 데이터를 찾을 수 없습니다.

내 간단한 질문은, 어떻게 반환하지 않으면 데이터베이스 쿼리를 처리하는 것입니다. 아래는 내 코드입니다.

@tokenSelected=Token.where(:tokenCode => "ABCDRRREF").first 

나중에 @ userSelected.userID가 비어 있는지 확인하려면 오류가 발생합니다.

<h1> 
    NoMethodError 
    in InitsController#create 
</h1> 
<pre>undefined method `empty?&#x27; for nil:NilClass</pre> 

나는 그것이 거짓 빈 또는 공백 문자열 인 경우

답변

2

대신 empty? 사용 blank?

@tokenSelected.blank? 

객체가 비어 것을 방지하기 위해 무엇을 할 수 있습니다. 예를 들어, "", "", nil, [] 및 {}는 모두 비어 있습니다.

+0

'object.present? ==! object.blank?'. 적합한 것을 사용하십시오. –

2

사용 object.present? 025, [], {}, 빈 문자열 및 빈 컬렉션에 대해 false을 반환합니다.