Ich habe ein Problem, wo ich nur die Duplikate aus 2 Array von aktiven Datensatz Objekte entfernen müssen. Die einzige Sache ist es, es nur von der Datenbank zu entfernen und ich muss es nur in diesem Fall aus dem Array entfernen. Ich folgte diesem Remove object from an array of objects und versuchte auch ein paar andere Dinge und sie waren in der Lage, es aus dem Speicher zu entfernen und explizit aus Array und nicht die Datenbank zu entfernen, aber ich bin nicht in der Lage, es zu replizieren. Irgendwelche Vorschläge wären großartig. Danke allen!Entfernen Sie Objekt aus dem Array, ohne es aus der Datenbank zu löschen
company_links = CompanyLinkType.where(company_id: company_ids, contact_linktype_id: 3)
other_company_links = CompanyLink.where(company_id: company_ids, link_type: 'Twitter')
company_links.each do |company_link|
other_company_links.each do |other_company_link|
# checks if id and url match, need to remove obj from company_link array
if other_company_link.company_id == company_link.company_id && other_company_link.url == company_link.contact_link_url
company_link.delete
Rails.logger.info"+++++++++DELETED++++++++++"
end
end
end
Wenn beide Arrays gleiche Art von Objekten Sie können oder zwei Arrays wie: 'company_links || other_company_links "es wird das gleiche Ergebnis wie gewünscht zurückgeben. –