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

Загрузить admin model из front controller


Recommended Posts

Добрый день.

 

Если кто знает подскажите, возможно ли какими-либо "нормальными" способами из front контроллера загрузить модель из админ части?

 

Поясню на примере. Когда меняю статус заказа в админке (иначе говоря добавляю историю) нужно чтобы при определенном статусе покупателю начислилось некоторое количество бонусных баллов.

 

На версии 1.5.5 проблем с этим не было:

 

В файле admin/controller/sale/order.php в нужном месте добавил:

$this->load->model('sale/customer');
$this->model_sale_customer->addReward($order_info['customer_id'], $comment, $bonus);

Однако в версии 2.1 появилось API заказа которое вынесли в лицевую часть магазина: catalog/controller/api/order.php и соответственно попытка сделать финт ушамии вот так - не работает:

$this->load->model('customer/customer');
$this->model_customer_customer->addReward($order_info['customer_id'], $comment, $bonus);

Я конечно понимаю что можно:

1) Самостоятельными SQL запросами в базу добавить

2) Пропатчить loader

 

Но хочется нормальных решений через существующие функции движка, а не в обход их. К тому же пропатчив loader и создав функцию загрузки админ-модели из фронта (прописав путь к админке), есть риск что пользователь переименовав в целях безопасности папку /admin/ столкнется с ошибками.

Змінено користувачем Gmp
Надіслати
Поділитися на інших сайтах


Не понятно ..а в чем вопрос-то?

 

в двойке сейчас это один инструмент

Т.е. все что делаете в админке, то возможно сделать и во фронте.. И наоборот, И не нужно бегать по двум эндам.

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

Вопрос в том, что того что вы озвучили я не увидел, поэтому и спрашиваю, может по другому нужно как то. За изменение статуса заказа отвечает фронт контроллер api/order.php, цепляюсь в нем за строчку отвечающую за изменение статуса заказа и пытаюсь добавить баллы, но ничего не выходит так как за добавление балоов отвечает админ модель customer/customer.php а загрузить ее не поучается - вылетает ошибка что такой модели не существует, смотрю путь где ищет - ищет во фронте, а там ее естественно нету.

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


  • 2 years later...

епт)Просто перенеси модель или контроллер во фронтенд часть чтоы пусть совпадал) К примеру вызываешь из контролерра модель (catalog/attribute) во фронтедне значит эта х... должна лежать в моделях во фронденте Скопируй из админки

Змінено користувачем shoputils
в следующий раз за мат надаём по шапке
Надіслати
Поділитися на інших сайтах


  • 3 years later...
11.09.2018 в 13:12, ArtemHolli сказал:

епт)Просто перенеси модель или контроллер во фронтенд часть чтоы пусть совпадал) К примеру вызываешь из контролерра модель (catalog/attribute) во фронтедне значит эта х... должна лежать в моделях во фронденте Скопируй из админки

Код в админ и фронте почти весь задублирован. 

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


04.08.2022 в 14:47, ekyt сказал:

Код в админ и фронте почти весь задублирован. 

не работайте с опенкарт

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

04.08.2022 в 14:54, ekyt сказал:

Не представляется возможным. Приходится разгребать эти авгиевые конюшни.

сам придумал? С 2009 работает, а в 2022 - конюшня. Может конюха поменять?

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

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

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

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

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

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

Вхід

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

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

Important Information

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