Первая проблема в том, что participants
является необязательным, поэтому вам нужно добавить? при обращении к нему
conversationDetails.participants?
, тогда при отображении следует использовать compactMap
, поскольку id
также является необязательным свойством
let recipient_ids = conversationDetails.participants?.compactMap { $0.id }
Другой вариант - не иметь необязательный массив, а вместо этого инициализировать его в пустой массив. На самом деле это гораздо лучший способ обработки свойств коллекции, потому что вы можете получить более чистый код, инициализируя их пустой коллекцией
var participants = [User]()
, а затем выполните
let recipient_ids = conversationDetails.participants.compactMap { $0.id }