Где в Joomla VirtueMart сидит производитель товара

4 Янв
2011

В файле administrator/components/com_virtuemart/classes/ps_product.php есть функция get_manufacturer_id:

1241
1242
1243
1244
1245
1246
1247
1248
1249
1250
1251
1252
1253
1254
1255
function get_manufacturer_id($product_id) {
    $db = new ps_DB;
 
    $q = "SELECT manufacturer_id FROM #__{vm}_product_mf_xref ";
    $q .= "WHERE product_id='$product_id' ";
 
    $db->query($q);
    $db->next_record();
    if ($db->f("manufacturer_id")) {
        return $db->f("manufacturer_id");
    }
    else {
        return false;
    }
}

судя по этому коду становится понятно где копать. У таблицы jos_vm_product_mf_xref нет Primary Key, его надо добавить, иначе EF через MySQL Connector.Net её не импортирует:

ALTER TABLE `jos_vm_product_mf_xref` ADD PRIMARY KEY(`product_id`)

после добавления Primary Key получается вот такая штука:

, поэтому лишний индекс надо удалить

ALTER TABLE jos_vm_product_mf_xref DROP INDEX idx_product_mf_xref_product_id
Линии 3D/Шарики 3D

Оставить комментарий или два

Наверх