Comment rendre un enum Decodable en Swift : guide complet
Bonjour à tous ! Je suis un développeur iOS débutant et j'ai un problème avec le décodage JSON en enum.
J'ai cet enum pour le statut de commande :
```swift
enum OrderStatus: String {
case pending
case confirmed
case shipped
case delivered
case cancelled
}
```
Et je reçois un JSON du serveur :
```json
{
"id": 1234,
"status": "pending"
}
```
J'essaie de décoder cela avec JSONDecoder :
```swift
struct Order: Decodable {
let id: Int
let status: OrderStatus
}
```
Mais Xcode affiche une erreur : "Type 'OrderStatus' does not conform to protocol 'Decodable'"
J'ai déjà ajouté String comme rawValue pour l'enum, pensant que cela aiderait. Mais non. Qu'est-ce que je fais de travers ? Dois-je écrire ma propre implémentation de init(from:) ou existe-t-il une façon plus simple ?
Enco