Ciao Ragazzi eseguo un'applicazione sinatra con mongomapper. Ho modelli chiamati video (documento) e di copertura (EmbeddedDocument) .I embed copre in filmati utilizzandoCome si elimina un documento incorporato in mongomapper?
@movie.covers << @cover
@movie.save
Questa grande opera. quando hit @ movies.covers ho ottenuto la matrice di documenti incorporati. Ma non sono in grado di distruggere il documento incorporato. Ho provato qualcosa di simile
@movie.covers.each do |c|
c.destroy
end
NoMethodError: undefined method `destroy' for #<Cover:0xb7b20734>
from (irb):5
from /usr/lib/ruby/gems/1.8/gems/mongo_mapper-0.6.8/lib/mongo_mapper/associations/proxy.rb:85:in `call'
from /usr/lib/ruby/gems/1.8/gems/mongo_mapper-0.6.8/lib/mongo_mapper/associations/proxy.rb:85:in `method_missing'
from /usr/lib/ruby/gems/1.8/gems/mongo_mapper-0.6.8/lib/mongo_mapper/associations/proxy.rb:85:in `each'
from /usr/lib/ruby/gems/1.8/gems/mongo_mapper-0.6.8/lib/mongo_mapper/associations/proxy.rb:85:in `send'
from /usr/lib/ruby/gems/1.8/gems/mongo_mapper-0.6.8/lib/mongo_mapper/associations/proxy.rb:85:in `method_missing'
from (irb):4
from :0
Qualcuno può temme come distruggerlo? Sarebbe bello se qualcuno mi illumini come aggiornare il documento incorporato.
Grazie pzol. Mi ha aiutato. Sarebbe molto utile se temi come posso aggiornare le copertine. – Deepak
Si carica il film. Le copertine sono un array, quindi è necessario sceglierne uno, modificarne i campi e quindi salvare: Ad esempio @movie = Movie.find (: first) @ movie.covers [0] .name = "nome aggiornato" @ movie.save –