Swift iOS - как динамически добавлять свойства в существующий класс и получать к ним доступ

Записать sysdate в столбец и использовать его для проверки. Этот столбец может быть вашим столбцом аудита (например, дата создания)

CREATE TABLE "AB_EMPLOYEE22"
(
   "NAME"     VARCHAR2 ( 20 BYTE ),
   "AGE"      NUMBER,
   "SALARY"   NUMBER,
   "DOB"      DATE,
   "DOJ"      DATE DEFAULT SYSDATE
);

Table Created    

ALTER TABLE "AB_EMPLOYEE22" ADD CONSTRAINT
AGE_CHECK CHECK((ROUND((DOJ-DOB)/365)) = AGE) ENABLE;

Table Altered
0
задан Lance Samaria 17 January 2019 в 16:52
поделиться

1 ответ

Используя предложение @DonMag в комментариях, он дал мне отличную альтернативу. Он предложил создать словарь в качестве свойства класса, а затем добавить в него пары ключ-значение.

class Order {

    var orderId: String?

    var dynamicDict = [String: Any]()

    convenience init(dict: [String: Any]) {
        self.init()

        orderId = dict["orderId"] as? String

        createDynamicKeyValues(dict: dict)
    }

    func createDynamicKeyValues(dict: [String: Any]) {

        for (key, value) in dict {

            if key.contains("+") {

                dynamicDict.updateValue(value, forKey: key)
            }
        }
    }
}

Чтобы использовать это:

let dict = ["orderId":"abc", "postId+0":"zero", "postId+1":"one", "postId+2":"two"] // postIds can go on

let order = Order(dict: dict)

for (key, value) in order.dynamicDict {
    print(key)
    print(value)
}
0
ответ дан Lance Samaria 17 January 2019 в 16:52
поделиться
Другие вопросы по тегам:

Похожие вопросы: