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

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

	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

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *