Ограничение по дополнительному свойству выборки элементов контроллером

#
Ограничение по дополнительному свойству выборки элементов контроллером
Код отсюда:
http://www.hostcms.ru/documentation/guide/modules/core/controllers

->queryBuilder()
    ->leftJoin('informationsystem_item_properties', 'informationsystem_items.informationsystem_id', '=', 'informationsystem_item_properties.informationsystem_id')
    ->leftJoin('property_value_ints', 'informationsystem_items.id', '=', 'property_value_ints.entity_id',
  array(
          array('AND' => array('informationsystem_item_properties.property_id', '=', Core_QueryBuilder::expression('`property_value_ints`.`property_id`')))
  )
    )
    // Идентификатор дополнительного свойства
    ->where('informationsystem_item_properties.property_id', '=', 19)
    // Значание дополнительного свойства
    ->where('property_value_ints.value', '=', '123')


(у кого-то была похожая задача в ветке http://www.hostcms.ru/forums/2/7122/page-32 но тема вырулила в другую сторону и код никто таки не выложил)

Как дополнительно добавить связывание с таблицей property_value_strings и floats?

И потом осуществлять выборку по допсвойтсвам одновременно (AND) с типами int, string и float?




И еще вопрос, по части запроса (необязательный)
where('property_value_ints.value', '=', '123'
Можно ли не по id (123) свойства делать выборку, а по имени where property_value_strings.value = 'steyr'

Но ведь в этой таблице нет самого значения, оно в другой таблице. Например у винтовки допсвойство  "производитель" имеет тип инфосистема и в качестве источника выбрана инфосистема "производители оружия" например.
Модератор
#
Re: Ограничение по дополнительному свойству выборки элементов контроллером
catfelix150,
Ваша же тема: http://www.hostcms.ru/forums/2/9839/

catfelix150 писал(а):
И еще вопрос, по части запроса (необязательный)
where('property_value_ints.value', '=', '123'
Можно ли не по id (123) свойства делать выборку, а по имени where property_value_strings.value = 'steyr'

Так если у Вас строка или в int хранится значение, то фильтрация и идет по значению, а не по ID. По ID в таблице property_value_ints у вас ищется в случае, если тип доп. св-ва список, ИС или магазин.
Авторизация