2014-06-08 1 views
0

관련 회로가없는 실험을 어떻게 필터링합니까?쿼리 결과를 필터링하는 방법?

내 실험 모델 :

has_many :circuits 

내 쿼리 :

@experiments = Experiment.where(:public=>true).where(
     'updated_at >= :one_month_ago, 
     :one_month_ago => Time.now - 30.days 
    ) 

그래서, 나는 동일한 제로 관련 회로 어떤 실험을하지 않도록해야합니다. 아이디어가 있으십니까?

답변

0

내가 동일한 관련된 회로에 제로

한 가지 방법을 어떤 실험을하지 않도록해야하는 설정 인에 validation 당신의 foreign_key(experiment_id) 당신이있는 경우.

Class Circuit < ActiveRecord::Base 

belongs_to :experiment 

validates :experiment_id, :presence=>true 

end 

그래서, 위의 유효성 검사를 설정하여, 당신은 every circuit is associated to the expeiment 확인 할 수 있습니다.

+0

그러나 관련 회로가없는 쿼리에서 해당 실험을 제외하는 방법은 무엇입니까? – simo

+0

@simo 제로와 관련된 회로를 쿼리 할 필요가 없습니다.이 검증이 주어지면 실험과 관련이없는 회로는 없을 것입니다. – Pavan

+0

작동하지 않았습니다. 여기를 참조하십시오. http://dcaclab.com/en/users_experiments 실험 회로 회로 실습은 나열되지 않아야합니다. 회로가 없기 때문입니다. – simo