Запрос в pdoUsers в связке с запросом к своим таблицам

Добрый день, уважаемые!

Есть таблица, в которой хранятся данные о пользователях. Нужно написать сниппет, который бы производил поиск по определённым группам пользователей. Решил использовать pdoUsers для данной задачи, но вот такая проблемка: при поиске нужно сверять указанные во время поиска данные с тем, что находится в этой сторонней таблице. Подскажите, есть ли возможность работать таким образом с pdoUsers? Если есть, то каким образом это можно сделать?

P.S.: Таблица называется "modx_nzs_users", ячейки, по которым будет производиться поиск "kurs", "fak" и т.д… Ячейка, где хранится internalKey пользователя modx — "userId".

Решено:
[[!pdoUsers?
	
	&showLog=`1`
	&loadModels=`nzs`
	&innerJoin=`
	{
		"nzsUser": {
			"class":"NzsUsers",
			"alias":"nzsUser",
			"on": "nzsUser.userId = modUser.id"
		}
	}`
	&where=`{"nzsUser.fak:LIKE":"%Программирование%"}`
	&select=`{
		"modUser":"*",
		"nzsUser":"fak,kurs"
	}`
]]
Пашок
21 октября 2014, 12:52
modx.pro
2
1 380
0

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

Виталий Киреев
21 октября 2014, 19:43
0
Чтобы подключить модель через сниппет, ее нужно сначала сгенерировать. Про схемы и модели, например, тут.
    Пашок
    Пашок
    22 октября 2014, 09:49
    0
    Я работаю со своими таблицами при помощи CMP Generator, он вроде генерит модели сам? Как в таком случае подключить модель через сниппет и работать с таблицей через pdoUsers? БлагоДарю за помощь!
      Николай
      22 октября 2014, 09:51
      0
      Ваш комментарий на ресурсе юбилейный, 20 000й =)
        Пашок
        Пашок
        22 октября 2014, 10:01
        0
        Отлично! Мне за это полагается помощь высококлассного специалиста в моём вопросе?))))
          Василий Наумкин
          22 октября 2014, 10:30
          0
          Из них четверть — мои. Кошмар…
      Василий Наумкин
      22 октября 2014, 10:21
      0
      Загрузка своей модели в сниппетах pdoTools производится через &loadModels.

      Затем можно использовать &innerJoin, чтобы присоединить другую таблицу и искать что-то по ней. Смотри пример работы с галереей через pdoResources вот здесь.

      У тебя должно быть что-то вроде
      [[!pdoUsers?
      	&loadModels=`nzsUsers`
      	&innerJoin=`{
      		"nzsUser":{"class":"nzsUser", "on":"myUser.internalKey = modUser.id"}
      	}`
      	&where=`{"nzsUser.fak":"text", "nzsUser.kurs:>":15}`
      	&select=`{
      		"modUser":"*",
      		"nzsUser":"fak,kurs"
      	}`
      ]]
      Возможный неточности и опечатки, не проверял. Награда за 20000 комментарий.
        Пашок
        Пашок
        22 октября 2014, 10:35
        0
        СпасИбо, Василий! А я здесь немного не так составлял запрос. Теперь понял, в чём моя ошибка!!! БлагоДарю за помощь!!!
      Авторизуйтесь или зарегистрируйтесь, чтобы оставлять комментарии.
      8