Перейти до вмісту
Пошук в
  • Детальніше...
Шукати результати, які ...
Шукати результати в ...

SQL-запрос при установке OCMOD в opencart 3


Recommended Posts

Всем hello

В opencart 2 в ocmod можно было добавлять install.sql и install.php с sql-запросами, но в 3-ке это не работает.

Как теперь добавлять строки, столбцы и новые талицы в бд?

Надіслати
Поділитися на інших сайтах

10 годин назад, mpn2005 сказав:

В контроллере админки у модуля можно делать методы: install и uninstall

Аналогичные методы можно создавать и в опенкарт 2?

 

А в модель можно прописать этот метод и как?

Надіслати
Поділитися на інших сайтах


2 минуты назад, comers сказал:

Аналогичные методы можно создавать и в опенкарт 2?

Да.

 

2 минуты назад, comers сказал:

А в модель можно прописать этот метод и как?

Например в методе install:

1) Подгружаем свою модель: $his->load->model('xxx/yyy/zzz');

2) Выполняем функцию модели: $this->model_xxx_yyy_zzz->checkDb();

 

Надіслати
Поділитися на інших сайтах

Но надо писать контроллер для  активации модуля.

А если модуль не имеет управления, а нужно просто добавить поле..

 

Надіслати
Поділитися на інших сайтах

30 хвилин назад, mpn2005 сказав:

Подгружаем свою модель: $his->load->model('xxx/yyy/zzz');

Полагаю это для тех случаев, когда отдельная модель модуля существует?

У меня только один ocmod.xml

Еще более простой вариант существует, если надо просто банальный sql запрос выполнить для добавления столбца в таблицу?

Надіслати
Поділитися на інших сайтах


1 минуту назад, comers сказал:

Еще более простой вариант существует, если надо просто банальный sql запрос выполнить для добавления столбца в таблицу?

Увы..
Как вариант, делать начальный и рабочий архив

Как вариант делать начальный контроллер
с инсталом
И после активации удалять его :( Но я этого не советую делать.

Надіслати
Поділитися на інших сайтах

6 хвилин назад, chukcha сказав:

Как вариант делать начальный контроллер

Нормальная ли практика, в описании к дополнению указывать запрос к БД, чтоб пользователь самостоятельно его выполнял?

Надіслати
Поділитися на інших сайтах


Не очень
Если это ненагруженная модификация, то как вариант в осмод делать ALTER TABLE  с проверкой

Надіслати
Поділитися на інших сайтах

15 часов назад, mpn2005 сказал:

В контроллере админки у модуля можно делать методы: install и uninstall

И они вызываются при установке и удалении.

Кстати, никто не сталкивался, так как у меня несколько раз было, что при установке модуля эти методы почему-то вообще не вызывались. 
Подозреваю, что причина в каком-то другом модуле, который через модификатор изменил логику работы движка или что еще может быть?
Я дальше не копал, не было времени, просто в index контроллера прописывал $this->install(); и все что нужно создавалось, костыль, но модуль начинал работать.
 

Надіслати
Поділитися на інших сайтах

1 час назад, sv2109 сказал:

Кстати, никто не сталкивался, так как у меня несколько раз было, что при установке модуля эти методы почему-то вообще не вызывались.

 

бывало такое, но это только тогда, когда файл-контроллер модуля был для другой версии php - закубирован под другую версию php

и выходило так, что модуль активируется, а таблицы не устанавливались.

и еще парочку раз было у клиентов, но причина осталась неизвестной. - предполагаю, что права Пользователя в базе были ограничены.

Надіслати
Поділитися на інших сайтах

10 минут назад, vier сказал:

бывало такое, но это только тогда, когда файл-контроллер модуля был для другой версии php - закубирован под другую версию php

и выходило так, что модуль активируется, а таблицы не устанавливались.

я контроллеры совсем не кодирую, поэтому в моем случае это не то

11 минут назад, vier сказал:

что права Пользователя в базе были ограничены.

это тоже не то, так как при ручном запуске install() из контроллера все запускалось, тут именно по какой-то причине сам движок не хочет запускать install()
У меня подозрение какой-то модуль, который эту стандартную логику движка ломает через какой-то свой модификатор и потом все разработчики мучаются, так как ничего не работает. 

Надіслати
Поділитися на інших сайтах

Только что, sv2109 сказал:

я контроллеры совсем не кодирую, поэтому в моем случае это не то

 

я описывал свои варианты, - возможно кому-то тоже придется с этим сталкиваться.

 

1 минуту назад, sv2109 сказал:

У меня подозрение какой-то модуль, который эту стандартную логику движка ломает через какой-то свой модификатор и потом все разработчики мучаются, так как ничего не работает. 

 

у меня тоже закрадывались такие подозрения на сторонние вмешательство, но пока за хвост не в поймал, но хотелось бы взглянуть в его "честные" глаза.

Надіслати
Поділитися на інших сайтах

В последнее время начал встречать всякие модификаторы FIX. Которые (по названию) правят какие-то недоработки.

А по факту ломают работу применения модификаторов. Нажимаешь обновить, и часть модификаторов вообще целиком игнорируются.

Поэтому не исключена магия фиксов и тут. Люде не разбираясь ставят фикс, который не помогает, но потом его не сносят и выстреливает позже, при установке другого модификатора.

И приходится ещё разъяснять, что не ты не жираф. :)

Надіслати
Поділитися на інших сайтах

Створіть аккаунт або увійдіть для коментування

Ви повинні бути користувачем, щоб залишити коментар

Створити обліковий запис

Зареєструйтеся для отримання облікового запису. Це просто!

Зареєструвати аккаунт

Вхід

Уже зареєстровані? Увійдіть тут.

Вхід зараз
×
×
  • Створити...

Important Information

На нашому сайті використовуються файли cookie і відбувається обробка деяких персональних даних користувачів, щоб поліпшити користувальницький інтерфейс. Щоб дізнатися для чого і які персональні дані ми обробляємо перейдіть за посиланням . Якщо Ви натиснете «Я даю згоду», це означає, що Ви розумієте і приймаєте всі умови, зазначені в цьому Повідомленні про конфіденційність.