관련 작업을 특정 작업의 표시 페이지에 표시하려고합니다. 사용자가 특정 작업을 볼 때 태그 (나는 태그를 사용하여 작업을 태그로 사용), 작업 기능 (작업 has_many : job_functions), 경험에 따라 모든 관련 작업을 표시해야합니다 (무게에 따라 표시해야 함) & 국가 (국가 선택 보석 사용).레일 : 고급 sql 쿼리
이 모든 기준이 무게를해야합니다 주어진 작업과 유사하다 작업이있는 경우 =에만 태그 및 작업 기능과 나라가 비슷 다른 작업이이 무게를해야합니다 경우 다른
100 = 70)를 포함한다. 그래서 나는
사실 난 그냥 태그
@related_jobs = Job.tagged_with(@job.tag_list, any: true)
에 따라 관련 직업을 찾는거야 중량을 기준으로 작업을 정렬 할 수 있습니다 그리고 또한 관련 찾기
@related_jobs = Job.includes(:functions)
.where('jobs.id != ?', @job.id)
.where(functions: { id: @job.functions.pluck(:id) })
큰 목표입니다. 질문이 뭐야? –
어떻게 이것을 할 수 있습니까? 내 코드를 어디에 넣을 까? 그것은 컨트롤러에없는 것 같습니다 – userails
아니, 이것은 컨트롤러에 속하지 않습니다. 이것은 마치 Job 클래스의 메소드 여야합니다. – Brennan