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

Как хранить конфиги от модуля.


Eduard

Recommended Posts

Всем привет! Не могу разобраться как в опенкарте хранятся настройки модулей. К примеру, хочу добавить одно поле под названием featured_product_number к модулю featured, добавил в контроллере строчку:

if (isset($this->request->post['featured_product_number'])) 
 {
      $featured_product_number = $this->request->post['featured_product_number'];
 } else {
      $featured_product_number = $this->config->get('featured_product_number');
 }

А в шаблоне поле:

<td class="left"><input type="text" name="featured_module[<?php echo $module_row; ?>][featured_product_number]" value="<?php echo $featured_product_number; ?>" size="3"/></td>

но это поле никуда не сохраняется. count($products) не поможет, т.к. featured_product_number и count($products) в моем модуле могут различаться.

Заранее спасибо за ваши ответы!

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


Да, я так и думал, что где-то здесь подвох) Ладно, тогда такой вопрос, где и как навесить обработчик, чтобы данные, введенные пользователем сохранялись в конфигах, чтобы потом их можно было достать и использовать?

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


Да, я так и думал, что где-то здесь подвох) Ладно, тогда такой вопрос, где и как навесить обработчик, чтобы данные, введенные пользователем сохранялись в конфигах, чтобы потом их можно было достать и использовать?

пример кода

if (($this->request->server['REQUEST_METHOD'] == 'POST') && ($this->validate())) {
			$this->load->model('setting/setting');
			
			$this->model_setting_setting->editSetting('exchange1c', $this->request->post);				
			
			$this->session->data['success'] = $this->language->get('text_success');

			$this->redirect($this->url->link('extension/dataexchange', 'token=' . $this->session->data['token'],'SSL'));
		}


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

Да, я так и думал, что где-то здесь подвох) Ладно, тогда такой вопрос, где и как навесить обработчик, чтобы данные, введенные пользователем сохранялись в конфигах, чтобы потом их можно было достать и использовать?

В базу пиши. Ну или текстовые конфиги, если очень хочется.

Контроллер получает и готовит все данные для view. Model содержит весь слой работы с БД.

И ещё подозреваю, что в твоём примере из первого поста скорей всего во View эта новая переменная не отобразится, поскольку ты скорей всего её в массив $this->data не записывал. А именно он передаётся из контроллера во view.

$this->data['featured_product_number'] = $featured_product_number;

что-то подобное должно быть перед вызовом соответствующего view.

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


В базу пиши.

Разве нужно заводить новую таблицу ради отдного числа? И для модуля featured не создается вроде бы новых таблиц.

Ну или текстовые конфиги, если очень хочется.

А как это сделать?
Надіслати
Поділитися на інших сайтах


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

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

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

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

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

Вхід

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

Вхід зараз
  • Зараз на сторінці   0 користувачів

    • Ні користувачів, які переглядиють цю сторінку
×
×
  • Створити...

Important Information

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