2012-07-11 5 views
0

내 코드가이 오류를 반환하는 이유는 무엇입니까?정의되지 않은 메서드 'size'for nil : NilClass

@articles = Article.order("id DESC").where(:visible => 1) 
if @aritcles.size > 15 
    @articles = Article.order("id DESC").where(:visible => 1).limit(15) 
end 

반환 :

undefined method `size' for nil:NilClass 

나는 그것이 정수를 반환

@articles = Article.order("id DESC").where(:visible => 1) 
@articles.size 

실행하면 ...

답변

3

즉 실제 코드에서 인 경우에, 당신은에 articles를 mispelled aritcles.

다른 경우 실제 코드를 제공해주세요.

+0

으로 교체! 내 잘못이야. 2시에 코딩하면 그렇게 할 수 있습니다. 감사! – Deekor

3

if @aritcles.size > 15if @articles.size > 15이어야합니다.

하지만 코드가 이상합니다. 그렇게 할 필요는 없습니다. 그냥 아래 충분합니다.

@articles = Article.order("id DESC").where(:visible => 1).limit(15) 
+0

+1은 "귀하의 코드가 이상합니다"입니다. 내 생각과 일치 해. –

0

으악 하하
@aritcles.size > 15

@articles.seze > 15

관련 문제