Здравствуйте! Сорри, только добрался к компу нормально.
Видел, вы на modxим написали, что вопрос решен, тем не менее я не увидел, чтобы кто-то расписал решение, и вы тоже не написали в чем именно проблема была. Немного напишу по этому поводу. Итак, есть предположение, что пользователь, которого вы получаете, в таблице имеет class_key = 'modUser', а по этой причине даже если вы в запросе указываете user=modx->getObject('extUser', array('username:=' => nickname)),вывсеравновитогеполучитеобъектотклассаmodUser,анеextUser.Итаблицадляэтогообъектабудетродная,анерасширенная.Почему?Потомучтоинстансконечногообъектазависитоттого,какойclasskeyпрописанвполучаемойзаписи.Оченьподробнопроэтописалздесь:modxclub.ru/blog/166.htmlРезюмирую:длятого,чтобыувасработалокакположено,увасзаписиввашейтаблицедолжнывколонкеclasskeyсодержатьимявашегокласса.Толькотогда,присохраненииобъекта,еслиэтобудетинстансвашегокласса,будетзаписьвыполненаввашутаблицу.Атакполучается,чтозапроснаселектвыполненкорректносучетомвашейтаблицы,новполученныхзаписяхclasskey=′modUser′,хотьисданнымиизвашейтаблицы.Конечныйобъект—modUser,еготаблицапомап−файлу—siteusers,иприсохранениитудаданныеипишутся.Попробуйтевконсолитаксделать:printmodx->getObject('extUser', array('username' => nickname))−>get(′classkey′);Чтонапишет?Итутжепопутно:a.user->save();
b. user−>addOne(data, 'Data'); user−>save();c.data->save(); Лишний раз сохраняете. Это ни к чему. Достаточно так: user−>addOne(data, 'Data');
Если связь прописана в мап-файле корректно, то $data сохранится автоматически при сохранении объекта юзера.