Поиск:

Ответ в темуСоздание новой темы Создание опроса
> mysql4-install, Скрипты инсталляции 
:(
    Опции темы
awers
Дата 28.10.2009, 23:44 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
***


Профиль
Группа: Участник
Сообщений: 1465
Регистрация: 22.3.2006
Где: Россия, Таганрог

Репутация: нет
Всего: 31



Создание mysql4 инсталлера для модуля.
Назовём наш модуль "EXmod"

Типичная директория модуля выглядит следующим образом:
Block/
controllers/
etc/
Helper/
Model/
sql/

Для создания инсталлера достаточно добавить поддиректорию в каталоге sql.
sql/my_setup/
Далее создаём php файл с именем "mysql4-install-0.1.0.php".
0.1.0 соответственно версия модуля. Обратите внимание, версия указываемая в названии этого файла
должна совпадать с версией модуля, указанной в etc/config.xml

Код

<?php
$installer = $this;
$installer->startSetup();

// Для выполнения mysql запроса достаточно использовать следующую конструкцию
$installer->run("CREATE TABLE ...");

// Для получения имён таблиц можно использовать такую конструкцию
$installer->run("insert into {$this->getTable('customer_entity')}");
// Если вы знаете имя модели, но не знаете имя таблицы можно писать так
$admin_role_table = Mage::getSingleton('core/resource')->getTableName('admin/role');
// Соответственно тут мы меняем только параметр передаваемый в getTableName()

// Удаление колонки из таблицы
$installer->getConnection()->dropColumn($this->getTable('customer_entity'), 'parent_id');

// Получение id атрибута для дальнейших манипуляций
$installer->getAttributeId('customer', 'email');

// Удаление ключа из таблицы
$installer->getConnection()->dropKey($installer->getTable('customer_address_entity_text'), 'IDX_VALUE');

// Простые запросы и дальнейший разбор при помощи while и $query->fetch()
$query = $installer->getConnection()->query($select);
 
// Для добавления атрибутов можно использовать следующую конструкцию
$installer->addAttribute('customer', 'someattribute', array(
    'label'    => 'Some attribute',
    'visible'  => false,
    'required' => false,
));

// И прочее.

$installer->endSetup(); 
?>


Внимание, не забываем чистить кэша. System->Cache management->Refresh 


Эта статья не закончена

Это сообщение отредактировал(а) awers - 3.11.2009, 00:08
PM MAIL WWW ICQ Skype   Вверх
awers
Дата 14.11.2009, 15:37 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
***


Профиль
Группа: Участник
Сообщений: 1465
Регистрация: 22.3.2006
Где: Россия, Таганрог

Репутация: нет
Всего: 31



Список функций можно найти тут: http://forum.vingrad.ru/forum/topic-280106.html
PM MAIL WWW ICQ Skype   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
1 Пользователей читают эту тему (1 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | sql | Следующая тема »


 




[ Время генерации скрипта: 0.0575 ]   [ Использовано запросов: 21 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.