Giải pháp cho câu hỏi này có thể trông khá đơn giản, nhưng tôi đã vẫy tay với không có câu trả lời.Kiểm tra phạm vi Mongoid Nếu trường mảng có giá trị
Tôi đang sử dụng Mongoid trong số Đường ray 4.1.4 ứng dụng của mình. Tôi có một mô hình có chứa trường Array sẽ có giá trị Chuỗi.
Tôi cần một Mongoid củaphạm vi trong mô hình để lấy những trường hợp Mảng lĩnh vực này chứa một giá trị Chuỗi cụ thể, được đưa ra như một tham số để phạm vi. Hãy nói rằng chúng tôi có mô hình này:
class SomeModel
include Mongoid::Document
include Mongoid::Timestamps
field :some_array, type: Array, default: Array.new
scope :some_scope, ->(value){ elem_match(some_array: value) }
end
Trên đây phạm vi không làm việc vì, rõ ràng, trong MongoDB$ elemMatch cần phải nhận được một Tiêu chuẩn như giá trị. Tuy nhiên, làm cách nào để tiêu chí Tiêu chí chỉ nói rằng phần tử phải bằng với giá trị đã cho ???.
Bất kỳ manh mối nào về cách viết phạm vi khá đơn giản này ???.
Kính trọng !!!. Cảm ơn trước.
Đã không đến với suy nghĩ của tôi rằng nó có thể là đơn giản. Hãy để tôi thử và tôi sẽ cho bạn biết nếu nó thực sự làm việc cho tôi. Cảm ơn!. –
Hoạt động hoàn hảo. Cảm ơn!. –