Russian Qt Forum
Ноябрь 22, 2024, 18:31 *
Добро пожаловать, Гость. Пожалуйста, войдите или зарегистрируйтесь.
Вам не пришло письмо с кодом активации?

Войти
 
  Начало   Форум  WIKI (Вики)FAQ Помощь Поиск Войти Регистрация  

Страниц: [1]   Вниз
  Печать  
Автор Тема: Json в Qt и использование Enginio  (Прочитано 3760 раз)
Max Payne
Гость
« : Март 17, 2014, 12:42 »

Доброе время суток,
Пытаюсь разобраться в новшествах Qt, есть сложный объект со следующими полями:
Код:
    qint32 id;
    QByteArray recordData;
    QDate dateOfCreatingRecord;
    QString recordName;
    qint32 clientFk;
    QString payment ; //!TODO! change latter
    QDate dateOfPayment;
    bool isAnswered ; //!TODO! change later
    QString comment;
    DataClassClient *client;

где DataClassClient имеет поля :
Код:
    qint32 id;
    QDate dateOfCreating;
    QString fio;
    int age;
    bool sex;
    QString deviceNumber;
    QString email;
    QString comment;

Задача писать это все в Cloud Backend  и читать от туда. С простыми объектами все нормально все работает, а вот со сложными проблема. Подскажите как правильно писать и читать сложные объекты средствами Qt. Заранее спасибо.
Записан
carrygun
Гость
« Ответ #1 : Март 18, 2014, 04:32 »

Сериализация/десереализация.
Записан
Max Payne
Гость
« Ответ #2 : Март 18, 2014, 13:35 »

Довольно лаконично =) Но боюсь просто сериализовать объект не поможет. И на это не сколько причин:
1. Объект включает в себя другой объект и в Enginio Backend это поле настроено как ref (objects), в модели я пытаюсь получить данные из двух таблиц и показать их на одной QTableView. Тут и начинаются все проблемы. Проблема реализации ролей модели + выборку из нескольких таблиц не получается сделать, а примеров пока найти не могу, для двух таблиц =\
2. Добавить новый объект можно через модель, поэтому проще писать объект не в поток а в QJsonDocument из которого получать QJsonObject и добавлять его через модель. Но тут тоже пока не получается записать сложный объект в QJsonDocument - Enginio добавляет в итоге объект с пустыми полями =\
Записан
Страниц: [1]   Вверх
  Печать  
 
Перейти в:  


Страница сгенерирована за 0.044 секунд. Запросов: 20.