Reino: orderar por propiedad en object secundario

Mi object de Show se ve así:

class Show: RLMObject { dynamic var venue: Venue? } 

y mi object Venue:

 class Venue: RLMObject { dynamic var title = "" } 

Necesito poder orderar mis objects de Show por los títulos de los objects Venue. Probé lo siguiente pero obtuve un error:

 allShowsByLocation = Show.allObjects().sortedResultsUsingProperty("venue.title", ascending: true) 

El error es: Columna de sorting no válida ', razón:' Columna llamada '(nula)' no encontrada.

El reino aún no admite la sorting de RLMResults por una RLMResults . Como solución alternativa, puede consultar para Venue y devolver su object de enlace para cada índice:

 allVenues = Venue.allObjects().sortedResultsUsingProperty("title", ascending: true) func showAtIndex(index: UInt) -> Show { return (allVenues[index] as Venue).linkingObjectsOfClass("Show", forProperty: "venue") } 

O simplemente podría agregar una propiedad de venueTitle a su model de Show que luego permitiría que su consulta funcione:

 allShowsByLocation = Show.allObjects().sortedResultsUsingProperty("venueTitle", ascending: true) 

También puede suscribirse a la cuestión # 1199 de GitHub para seguir nuestro progreso en el apoyo a la sorting de subpoblaciones.

Estoy muy triste cuando Reino no apoya esta function. Intento otra solución para este problema y funciona bien

  • copyr todo el object en RLMResults a una matriz
  • Ordenar la propiedad sub del object en Array usando comparar