Rails 3.1 로의 업그레이드를 준비하기 위해 MetaWhere에서 Squeel로 마이그레이션하려는 어플리케이션이 있습니다.MetaWhere에서 마이그레이션하여 심볼을 사용하지 말자.
이 과정은 대부분 간단한 과정 이었지만 문제가되는 경우가 하나 있습니다. 문제는 필드와 값을 변수로 지정했기 때문입니다. 내 MetaWhere 쿼리에서 필드 이름의 기호를 간단하게 만들고 쿼리에서 사용하지만 Squeel은 기호를 사용하지 않고 대신 instance_eval을 사용하므로 유사한 쿼리를 만드는 방법을 찾을 수 없습니다.
원래 쿼리의 그림이 될 수 :
Article.where("#{field_name}".to_sym.matches => '%' + field_value + '%')
가 어떻게 Squeel에서 비슷한 쿼리를 만들려면 어떻게해야합니까?
레거시 심볼 기능을 사용하겠다고 지정할 수 있지만 새로운 구문으로 완전히 변환하겠다는 것을 알고 있습니다.
해결책을 찾았습니까? 나는 또한 그것을하는 방법 호기심이다. – tokland