2016-09-25 5 views

답변

0

비교를 위해 Mongoid에서 데이터를 검색해야합니다.

mdl_temp = Mdl.by_params(params) 
mdl = mdl_temp unless mdl_temp < limit 
+0

감사합니다,하지만 난 쿼리를 많이 가지고 있습니다 이 일을하고 그것을 읽을 수있는 일종의 내가 어쩌면 직접이 일을 루비 메서드를 생각했다 또는 메서드를 만들 수 있습니까? – Bowtch

+0

이와 같은 쿼리가 많은 경우 논리를 독립 실행 형 메서드로 분리하십시오. 'mdl = search_by_params (params, limit)' –

+0

그래, 내가 쓰고있는 방법이지만, 가장 구체적인 쿼리가 충분한 결과를 반환하지 않으면 결과를 얻고 싶다. ^^ 아마 다른 질문을 할 것이다. 이 정도면 충분하다. 시간 내 주셔서 감사합니다.) – Bowtch

1

가능한 해결책은 md1 데이터 유형에 따라 다릅니다.

일반 솔루션 :

((mdl = Mdl.by_params(params)) < limit) && md1 = nil 

md1 경우 replace에 응답 mutatable 개체의 오전 인스턴스 (예 : Hash)입니다 :

Mdl.by_params(params).tap do |md| 
    md1.replace(md) unless CONDITION # md[:limit] < limit 
end