Как получить SQL запрос из getObject/newObject

Всем привет!
Кто-нибудь в курсе, есть ли возможность получить текст запроса при вызове getObject и newObject без их выполнения?
prefedor
24 февраля 2015, 10:43
modx.pro
1
1 392
0

Комментарии: 10

Сергей Шлоков
24 февраля 2015, 15:34
0
Попробуй в системных настройках установить
debug = 1
И в журнале посмотреть чего получится.
А вообще, странное желание. А чего там смотреть —
INSERT INTO table (fields_list) VALUES (values_list)
UPDATE table SET field = values WHERE id= $id
Как-то так.
    prefedor
    24 февраля 2015, 16:34
    0
    INSERT и UPDATE — это все понятно, собственно, проблема в том, что ресурсы заполняются из внешнего скрипта, используя newObject для новых и getObject -> setTVValue для TV. Но их очень много, ресурсов получается не меньше 100000 (да, это сто тысяч), поэтому все это очень долго происходит (по нескольку часов).
    У меня была мысль загнать все это добро в дамп и одной большой транзакцией скормить его мускулу.
    debug = 1 не поможет (пробовал), скрипт выполняется из bash и результатов дебага нет даже в логах.
      Алексей Ерохин
      24 февраля 2015, 16:40
      0
      Запросы эти можно вручную написать. Ничего сложного.
        Stepan
        25 июля 2021, 20:35
        0
        ну еще можно и modx не пользоваться в принципе, вопрос то не в этом…
      Stepan
      25 июля 2021, 20:36
      0
      например
      не работает запрос
      $_lim = $modx->getObject( 'LimitedUser', [
         'team_id' => clearID($_chek_team['team_id']),
         'lim_module' => 'corp_event',
         'lim_finish:>' => date("Y-m-d G:i", time()),
         [
           'lim_used' => 0,
           'OR:res_id' => $_res->get('id'),
         ]
      ] );
      и вот как узнать что именно не так
        Николай Савин
        25 июля 2021, 21:39
        0
        Условие выборки — это одномерный массив. У вас двумерный почему то. В нем проблема. Как минимум в нем тоже
          Stepan
          24 октября 2021, 05:56
          0
          а как тогда реализовать конструкцию (value AND value) OR (value AND value),
            Николай Савин
            24 октября 2021, 08:28
            0
            Через метод newQuery — прочтите документацию
              Сергей Шлоков
              24 октября 2021, 11:52
              +1
              $_lim = $modx->getObject( 'LimitedUser', [
                 [
                      'foo' => 'value',
                      'bar' => 'baz',
                 ],
                 [
                      'OR:foo:=' => 'value2',
                      'bar' => 'baz2',
                 ]
              ] );
        Алексей Ерохин
        24 февраля 2015, 16:37
        0
        Вместо getObject можно использовать newQuery и составить условия такие же
        rtfm.modx.com/xpdo/2.x/class-reference/xpdoquery
          Авторизуйтесь или зарегистрируйтесь, чтобы оставлять комментарии.
          10