Załóżmy, że mam tę tablicę z identyfikatorami wysyłek.Szyny 3. Jak uzyskać różnicę między dwiema tablicami?
s = Shipment.find(:all, :select => "id")
[#<Shipment id: 1>, #<Shipment id: 2>, #<Shipment id: 3>, #<Shipment id: 4>, #<Shipment id: 5>]
Array faktur z wysyłką identyfikatory
i = Invoice.find(:all, :select => "id, shipment_id")
[#<Invoice id: 98, shipment_id: 2>, #<Invoice id: 99, shipment_id: 3>]
- faktur należy do wysyłki.
- Przesyłka ma jedną fakturę.
- Tak więc tabela faktur zawiera kolumnę
shipment_id
.
Aby utworzyć fakturę, klikam Nowa faktura, a następnie dostępne jest menu wyboru z przesyłkami, dzięki czemu mogę wybrać "w której przesyłce jestem fakturą za". Dlatego chcę wyświetlić listę przesyłek, dla których nie utworzono faktury.
Potrzebuję więc szeregu przesyłek, które nie mają jeszcze faktury. W powyższym przykładzie, odpowiedź byłaby 1, 4, 5.
1, 4, 5 nie jest listą identyfikatorów faktur z adresem no_shipment_id. – Robin
Przepraszamy, poprawione pytanie. Dzięki za rozpatrzenie. – leonel
możliwy duplikat [Znajdowanie wszystkich rekordów bez powiązanych z nimi] (http://stackoverflow.com/questions/1314408/finding-all-records-without-associated-ones) –