Magento 2 - Sammlungen gegen Repositories


7

Bitte erläutern Sie den Unterschied zwischen Sammlungen und Repositorys.

  1. Was ist der Unterschied zwischen diesen beiden?
  2. Welches soll ich im benutzerdefinierten Modul verwenden?

Antworten:


7

Sammlungen

  • Wenn Sie während der Entwicklung mit Sammlungen arbeiten, die viele Attribute, Filter und möglicherweise ein zukünftig großes Dataset enthalten, möchten Sie möglicherweise die SQL-Protokollierung verwenden, um tatsächliche SQL-Abfragen aufzuzeichnen, die auf den Datenbankserver treffen.

  • Dies kann uns helfen, mögliche Leistungsengpässe zu erkennen und rechtzeitig zu reagieren, indem wir setPageSize oder addAttributeToSelect oder beides um weitere Grenzwerte erweitern.

Repositories

  • Wenn Sie Repositorys verwenden, halten Sie sich an Magento 2-Serviceverträge. Dies bedeutet, dass Serviceschnittstellen und Datenschnittstellen definiert sind (jedoch durch Module von Drittanbietern erweiterbar sind).
  • Zur Laufzeit kann das Ergebnis des Aufrufs in die Methode getList () eines Repositorys geändert werden.
  • Um die zur Laufzeit benötigten Attribute abzurufen, können Sie Sammlungen verwenden. Das Magento 2-Framework selbst nutzt Sammlungen in hohem Maße.
  • Andernfalls sollten Sie ein Modul implementieren, das eine neue Datenschnittstelle (dh den neuen Satz von Attributen) für diese Entität definiert.

So können wir sowohl unsere Priorität als auch unsere Flexibilität nutzen.

Durch die Nutzung unserer Website bestätigen Sie, dass Sie unsere Cookie-Richtlinie und Datenschutzrichtlinie gelesen und verstanden haben.
Licensed under cc by-sa 3.0 with attribution required.