Автор Тема: переменная из product.tpl в cart  (Прочитано 734 раз)

10 Июнь 2019, 14:09:14
Ответ #15
  • Новичок
  • *
  • Сообщений: 14
  • Репутация: +0/-0
  • Сообщество PrestaShop
    • Просмотр профиля
Толку что вы добавяете переменную в javascrit нет. В контроллере ее нет, в классе ее нет, в базе ее нет.
В вашем примере jsonData это ответ сервера, вам он не так важен, главное получить эту переменную в контроллере, пересчитать стоимость товара, сохранить стоимость в базу.
в контролере получил переменную, но не могу пересчитать стоимость, не пойму где это происходит
10 Июнь 2019, 14:19:44
Ответ #16
  • Ветеран
  • *****
  • Сообщений: 1285
  • Репутация: +13/-1
  • Сообщество PrestaShop
    • Просмотр профиля
/**
    * Return useful informations for cart
    *
    * @return array Cart details
    */
    public function getSummaryDetails($id_lang = null, $refresh = false)
    {
10 Июнь 2019, 14:21:37
Ответ #17
  • Ветеран
  • *****
  • Сообщений: 22125
  • Репутация: +25303/-1
  • Prestashop - просто и эффективно
    • Просмотр профиля
Толку что вы добавяете переменную в javascrit нет. В контроллере ее нет, в классе ее нет, в базе ее нет.
В вашем примере jsonData это ответ сервера, вам он не так важен, главное получить эту переменную в контроллере, пересчитать стоимость товара, сохранить стоимость в базу.
в контролере получил переменную, но не могу пересчитать стоимость, не пойму где это происходит
В методе displayAjax.
У вас же корзина по Ajax включена?
Эксперт Prestashop - решения всех проблем, написание модулей, создание тем для интернет-магазинов под Prestashop.
Эксперт Magento - создам сайт на Magento, программирование кастомных модулей для Magento, кастомизация тем Magento.
Лучшие цены!!!
10 Июнь 2019, 14:28:33
Ответ #18
  • Партнер
  • Ветеран
  • ****
  • Сообщений: 22816
  • Репутация: +17143/-1
  • Разработка веб-сайтов и веб-программирование
    • Просмотр профиля
Была такая тема, там писали, что метод cacheSomeAttributesLists в классе Cart нужно переопределять.
В этом методе расчет стоимости комбинаций товара.
Интернет-магазин под ключ.
Какой выбрать движок для интернет магазина ?
Какой движок лучше ?
Magento или Prestashop ?
Решение всех Ваших вопросов в создании Интернет-магазина.
10 Июнь 2019, 15:01:16
Ответ #19
  • Новичок
  • *
  • Сообщений: 14
  • Репутация: +0/-0
  • Сообщество PrestaShop
    • Просмотр профиля
В методе displayAjax.
У вас же корзина по Ajax включена?

Да включена, сейчас пытаюсь разобраться в данном методе
11 Июнь 2019, 11:25:34
Ответ #20
  • Новичок
  • *
  • Сообщений: 14
  • Репутация: +0/-0
  • Сообщество PrestaShop
    • Просмотр профиля
я как понимаю при добавлении в корзину - цена ни в какую таблицу не записывается правильно?
11 Июнь 2019, 19:27:10
Ответ #21
  • Ветеран
  • *****
  • Сообщений: 16667
  • Репутация: +14630/-5
  • Сообщество PrestaShop
    • Просмотр профиля
При добавлении товара в корзину цены берутся из таблицы товаров и комбинаций. Т.е. нельзя переназначать цены созданные в админке.
Поэто вам вариант с подставнокой поля в шаблон не рабочий.
Он нужен только для визуального изменения цен на странице.
13 Июнь 2019, 18:30:37
Ответ #22
  • Новичок
  • *
  • Сообщений: 14
  • Репутация: +0/-0
  • Сообщество PrestaShop
    • Просмотр профиля
тогда пойду немного по другому.
в ajax-cart.js
...
data: 'controller=cart&add=1&ajax=true&qty=' + ((quantity && quantity != null) ? quantity : '1') + '&id_product=' + idProduct + '&id_price_new='+ id_price_new +' &token=' + static_token + ( (parseInt(idCombination) && idCombination != null) ? '&ipa=' + parseInt(idCombination): ''),
success: function(jsonData,textStatus,jqXHR)
{
console.log(jsonData);
...
}
при выводе http://prntscr.com/o1flqo

вот массив products выходит из cart.php функцией
  public function getProducts($refresh = false, $id_product = false, $id_country = null)
{...}
а как в json свои данные добавить?
14 Июнь 2019, 10:35:27
Ответ #23
  • Ветеран
  • *****
  • Сообщений: 1614
  • Репутация: +32/-1
  • Сообщество PrestaShop
    • Просмотр профиля
Цитировать
а как в json свои данные добавить?
В ajax-cart.js data: ...+'свои данные'

Вопрос в том, зачем?