objectbox / objectbox/objectbox-java

Add query filter that tests for empty ToMany

Offen
#677 1 Kommentar 11 Reaktionen 0 zugewiesene Personen Auf GitHub ansehen

Dieses Issue hat noch niemand übernommen.

enhancement
Vorherrschende Sprache
Java
Sterne
4.6k
Forks
311
PR-Merge-Kennzahlen
Keine gemergten PRs in 30 T.

Beschreibung

It would be nice if QueryBuilder would allow to test for emptiness without having to resort to using filter(). This would be especially useful with many-to-many relations if one could write something like this:

boxFor(SomeEntity::class)
    .query()
    .empty(SomeEntity_.otherEntities)
    .build()
    .find()

This would return all instances of SomeEntity that do not have any related OtherEntity if SomeEntity is defined like this:

class SomeEntity {
    lateinit var otherEntities: ToMany<OtherEntity>
}

Beitragsleitfaden

Für dieses Repository ist kein Beitragsleitfaden indexiert

Erste Schritte

  1. Lies das ganze Issue und danach den Beitragsleitfaden des Projekts.
  2. Schreib ins Issue, dass du es übernimmst — das erspart doppelte Arbeit.
  3. Forke das Repository und arbeite in einem Branch.
  4. Öffne einen Pull Request, der die Issue-Nummer nennt.

Rechercherichtung

Beginne damit, die QueryBuilder API und die bestehende Verarbeitung von filter() zu lokalisieren, und prüfe anschließend, wie ToMany-Beziehungen in Abfragen dargestellt werden. Die Arbeit ist abgeschlossen, wenn eine Abfrage im Stil von empty(SomeEntity_.otherEntities) Entitäten ohne zugehörige OtherEntity-Datensätze zurückgibt und durch geeignete Abfragetests abgedeckt ist.

Vom Indexierungsmodell aus dem Issue-Text verfasst.

Bewertung

Tech-Stack
java, kotlin
Bereich
databases
Issue-Typ
Feature
Schwierigkeit
4/5
Geschätzter Aufwand
3-5 Tage
Aktivitätsstatus
Veraltet
Klarheit
Größtenteils klar
Anfängerfreundlichkeit
25/100

Neue Issues direkt in Ihr Postfach

Eine kurze Übersicht über anfängerfreundliche GitHub-Issues.