La soluzione per questa domanda potrebbe sembrare piuttosto semplice, ma sono stato in giro senza risposta.Controllo mongolo Verificare se il campo Array contiene il valore
Sto usando Mongoide nel mio Rails 4.1.4 app. Ho un modello che contiene un campo Array che ospiterà i valori String.
Ho bisognoportata una di Mongoid nel modello per recuperare quei casi in cui questo Array campo contiene un valore specifico String, dato come parametro al campo di applicazione. Diciamo che abbiamo questo modello:
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
È possibile che questo ambito non funziona perché, ovviamente, in MongoDB$ elemMatch ha bisogno di ricevere un Criteri come valore. Ma, come sarebbe il Criteri per dire solo che l'elemento deve essere uguale al valore dato ???.
Eventuali indizi su come scrivere questo ambito piuttosto semplice ???.
Saluti !!!. Grazie in anticipo.
Non è venuto ai miei pensieri che potrebbe essere così semplice. Lasciami fare un tentativo e ti farò sapere se ha davvero funzionato per me. Grazie!. –
Funziona perfettamente. Grazie!. –