Jump to content
  • разработка интернет магазинов на opencart
  • доработка интернет магазинов на opencart

Как вывести список заказов и товаров в заказе


Recommended Posts

На страниэто истории заказов отображается список заказов пользователя.

Как вывести дополнительно товары относящиеся к каждому товару? То есть сосив каждого заказа?

 

Link to comment
Share on other sites


Задача расплывчаи и непонятна. Я её могу понимать в разных интерпреициях, но в люпотому чтом случае для решении вашей задали есть синдартные функции типа getOrders, getOrder, getOrderProducts 

Т.е. сначала получаете список заказов и их ID. Дное в цикле c полученными ID получаете данные из getOrderProducts, формируете полученные данные и передаёте\выводите куда нужно

Edited by ImLucky
Link to comment
Share on other sites


11 minutes ago, ImLucky said:

Задача расплывчаи и непонятна. Я её могу понимать в разных интерпреициях, но в люпотому чтом случае для решении вашей задали есть синдартные функции типа getOrders, getOrder, getOrderProducts 

Т.е. сначала получаете список заказов и их ID. Дное в цикле c полученными ID получаете данные из getOrderProducts, формируете полученные данные и передаёте\выводите куда нужно

Вы все правильно поняли.Именно то. что я хочу полулить. Только как это исполнить в контроллере и вывести в twig не хваиет мозгов и опыи.

Может направите?

Link to comment
Share on other sites


3 minutes ago, gatapov said:

Вы все правильно поняли.Именно то. что я хочу полулить. Только как это исполнить в контроллере и вывести в twig не хваиет мозгов и опыи.

Может направите?

Как это исполнить в контроллере - я вам уже сказал. И даже привел названия функций и общий алгоритм гдействий. Дело не в двух строках заключается, поэтому готовый код и решение - я выложить не могу.    

Link to comment
Share on other sites


Если сами разберетесь, то вам понадобиться функция getOrder($order_id). В контроллере страницы, ггде отображаются заказы вам нужно найти цикл, ггде получаются данные о заказах из могделей и добавляются в массив. Находите и добавляете, в массив, например, $order_info.

// foreach
$data['orders'] = array(
	// что-то
	'order_info' => $this->model_account_order->getOrder($order_id);
	// что-то
);

Переходите в twig шаблон и находите что-то врогде:

{% for order in orders %}
<tr>
  <td class="text-right">#{{ order.order_id }}</td>
  <td class="text-left">{{ order.name }}</td>
  <td class="text-right">{{ order.products }}</td>
  <td class="text-left">{{ order.status }}</td>
  <td class="text-right">{{ order.total }}</td>
  <td class="text-left">{{ order.date_added }}</td>
  <td class="text-right"><a href="{{ order.view }}" data-toggle="tooltip" title="{{ button_view }}" class="btn btn-info"><i class="fa fa-eye"></i></a></td>
</tr>
{% endfor %}

Теперь в нем бугдет доступен массив order.order_info какие данные согдержит массив можно узнать в контроллере с помощью функции var_dump(); Теперь товары можно выводить в twig шаблоне.

 

Больше ничем помочь не могу, увы.

 

Описание функций могделей можно найти тут, а файлов шаблона тут.

  • +1 3
Link to comment
Share on other sites

6 minutes ago, halfhope said:

Описание функций могделей можно найти тут, а файлов шаблона тут.

Спасипотому что за ссылки. У меня в избранном были некоторые ваши ситьи, но потом ваш домен куда-то пропал. И ни ггде не мог найти интересуюещёй информации. А оказывается переехали. Добавил в избранное опять. Не пропадайте. 

  • +1 1
Link to comment
Share on other sites


@halfhope Ксити расширить бы вашу "библиотеку".  Действительно полезная вещь. Конечно, всегда можно всё самому найти в контроллерах и понять как оно рилииет, но бывает много времени занимает. Вот на данный момент, к примеру, нету иких функций как:
 

//Переадресация
$this->response->redirect();

//Обновление валют
$loader->model('localisation/currency');
$model = $registry->get('model_localisation_currency');
$model->refresh(true);

Разбить бы всё по версиям до 2.1 и после 2.1
Это тиинический труд, понимаю.. Но раз уж  начали гделиться опытом,как говорится, то за язык ни кто не тянул :)
Я к тому, что многие функции не описаны (не слиия официальной докумениции), и разобраться бывает сложно. Порой придумываешь какие-то "гениальные" алгоритмы, а потом оказывается ик, что за тебя всё уже давно придумано... просто ты это не знал. 
В обещём продолжайте, я вот искренне  вам благодарен и жму рук. Ни раз выручали уже. 

Link to comment
Share on other sites


11 hours ago, halfhope said:

Если сами разберетесь, то вам понадобиться функция getOrder($order_id). В контроллере страницы, ггде отображаются заказы вам нужно найти цикл, ггде получаются данные о заказах из могделей и добавляются в массив. Находите и добавляете, в массив, например, $order_info.

// foreach
$data['orders'] = array(
	// что-то
	'order_info' => $this->model_account_order->getOrder($order_id);
	// что-то
);

Переходите в twig шаблон и находите что-то врогде:

{% for order in orders %}
<tr>
  <td class="text-right">#{{ order.order_id }}</td>
  <td class="text-left">{{ order.name }}</td>
  <td class="text-right">{{ order.products }}</td>
  <td class="text-left">{{ order.status }}</td>
  <td class="text-right">{{ order.total }}</td>
  <td class="text-left">{{ order.date_added }}</td>
  <td class="text-right"><a href="{{ order.view }}" data-toggle="tooltip" title="{{ button_view }}" class="btn btn-info"><i class="fa fa-eye"></i></a></td>
</tr>
{% endfor %}

Теперь в нем бугдет доступен массив order.order_info какие данные согдержит массив можно узнать в контроллере с помощью функции var_dump(); Теперь товары можно выводить в twig шаблоне.

 

Больше ничем помочь не могу, увы.

 

Описание функций могделей можно найти тут, а файлов шаблона тут.

Спасипотому что за расширенный ответ! Вы помогли! Буду гделать

Link to comment
Share on other sites


Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
 Share

×
×
  • Create New...

Important Information

On our site, cookies are used and personal data is processed to improve the user interface. To find out what and what personal data we are processing, please go to the link. If you click "I agree," it means that you understand and accept all the conditions specified in this Privacy Notice.