2012-10-05 2 views
0

나는 카테고리 테이블을 가지고 있으며, 카테고리 이름을 아는 것에 기반하여 ID를 얻을 수 있기를 원합니다. 레일 콘솔에서레일즈 - 다른 조건과 일치하는 레코드의 ID를 얻는 방법

나는 성공적으로 개체를 발견

cat = Category.where("name = ?", "Food") 

을 시도했지만 입력 고양이 [: ID가] 나에게 "정수로 기호를 변환 할 수 없습니다 형식 오류"를 제공합니다. 내가 도대체 ​​뭘 잘못하고있는 겁니까?

답변

0

대신 find_by_name을 사용해보세요.

cat = Category.find_by_name('Food') 
puts cat.id 

where 배열 (물론, 배열 등) 객체를 반환한다. 따라서 대신 cat = Category.where('name = ?', 'Food').first을 사용할 수 있습니다. find 메소드는 똑같은 일을 할 것이지만 깨끗하게 보입니다.

0
cat = Category.where("name = ?", "Food").first 
id = cat.id 
관련 문제