Ранее я писал о том, как сохранить данные JSON в модели здесь .
Хорошо, что сейчас я разрабатываю проект на iOS с помощью swift, и я сталкиваюсь со следующей проблемой: иногда администраторы баз данных постоянно меняют имена столбцов, я использую сервисы только с помощью Alamofire , чтобы сохранить данные в моделях, используйте случай camal и змею, на данный момент все хорошо, но я хотел бы знать, каков наилучший способ сохранить данные json в быстрой модели, по моему опыту с Android Я использовал модификацию с @Serializename
, и она работала замечательно, потому что если атрибут json службы был изменен, мне нужно было только обновить строку кода, и моя переменная могла остаться такой же, это помогло мне поддерживать лучший порядок, и это сделало это масштабируемое.
В некоторых случаях JSON приходит ко мне.
{
"price": "385.000000",
"nameusser": null,
"favorite": 43,
"short_nameProduct": "Génifique Repair Sc",
"description_product": "Génifique repair sc es la crema de noche antiedad de lancôme. Despiértese con una piel fresca y rejuvenecida con nuestra crema de noche.",
"alt": null,
"photo": "https://url/020021000112-1.png"
}
в быстром он будет генерировать мою модель следующим образом.
struct Product : Codable {
let price : String?
let nameusser : String?
let favorite : Int
let shortNameProduct : [Product]
let description : [Galery]
let alt : Product
let success : Bool
}
Проблема здесь в том, что мои переменные должны соответствовать json, который я использую JSONDecoder()
и convertFromSnakeCase
, я не могу определить их сам.
в то время как в Java-Android я просто должен сделать это так.
@SerializedName("price")
private String price;
@SerializedName("nameusser")
private String name;
@SerializedName("favorite")
private Int favorite;
@SerializedName("short_nameProduct")
private String shortName;
@SerializedName("description_product")
private String descriptionProduct;
@SerializedName("altitude")
private String altitude;
@SerializedName("photo")
private String photo;
Мне просто нужно создать и получить, и я был бы готов использовать модель.
Мне нужно знать, как сделать в Swift то же самое, может быть, библиотека, которая помогает мне хранить данные JSON так же, как я делаю в Android.
Любой комментарий будет очень признателен.