Если вы посмотрите на сигнатуру типа distinct(by:)
(func distinct<S>(by keyPaths: S) -> Results<Person> where S : Sequence, S.Element == String
), вы увидите, что она ожидает входной аргумент типа Sequence<String>
.Более того, взглянув на документацию метода, он говорит вам, что вам нужно передать keyPaths как String
s, которые вы хотите использовать, чтобы получить отличные результаты.
Так что использованиеПример класса Dog
из официальной документации, если вы хотите получить отличные результаты на основе свойства name
, вызов вашей функции будет выглядеть следующим образом:
class Dog: Object {
@objc dynamic var name = ""
@objc dynamic var age = 0
}
realm.objects(Dog.self).distinct(by: ["name"])