chukcha Опубліковано: 26 червня 2016 Share Опубліковано: 26 червня 2016 расскажите как например выборку модифицировать без *mod ? Создать конструктор запросов например $query = $this->db->get('mytable', 10, 20); или $query = $this->db->get_where('mytable', array('id' => $id), $limit, $offset); или $this->db->select('title, content, date'); $query = $this->db->get('mytable'); или $this->db->select('*'); $this->db->from('blogs'); $this->db->join('comments', 'comments.id = blogs.id'); И теперь модифицируй безопасно, совместимо И не только... ведь в таком случае можно использовать как полный, так и кастомизированный запрос. Надіслати Поділитися на інших сайтах More sharing options... Otvet Опубліковано: 26 червня 2016 Share Опубліковано: 26 червня 2016 Не представляю как для огромных запросов вроде getproducts это возможно Я не это имел ввиду. Тут речь не идет о переработке архитектуры. Человек написал что обходится без модификаций, вот я спросил, как он обойдется если например нужно будет в выборке товаров только с положительным остатком выдавать? Надіслати Поділитися на інших сайтах More sharing options... chukcha Опубліковано: 26 червня 2016 Share Опубліковано: 26 червня 2016 (змінено) $this->db->select("p.product_id"); $this->db->select("(SELECT AVG(rating) AS total FROM " . DB_PREFIX . "review r1 WHERE r1.product_id = p.product_id AND r1.status = '1' GROUP BY r1.product_id) AS rating"); $this->db->select("(SELECT price FROM " . DB_PREFIX . "product_discount pd2 WHERE pd2.product_id = p.product_id AND pd2.customer_group_id = '" . (int)$this->config->get('config_customer_group_id') . "' AND pd2.quantity = '1' AND ((pd2.date_start = '0000-00-00' OR pd2.date_start < NOW()) AND (pd2.date_end = '0000-00-00' OR pd2.date_end > NOW())) ORDER BY pd2.priority ASC, pd2.price ASC LIMIT 1) AS discount"); $this->db->select("(SELECT price FROM " . DB_PREFIX . "product_special ps WHERE ps.product_id = p.product_id AND ps.customer_group_id = '" . (int)$this->config->get('config_customer_group_id') . "' AND ((ps.date_start = '0000-00-00' OR ps.date_start < NOW()) AND (ps.date_end = '0000-00-00' OR ps.date_end > NOW())) ORDER BY ps.priority ASC, ps.price ASC LIMIT 1) AS special"); $this->db->from("product p"); $this->db->join("product_description pd", 'p.product_id = pd.product_id'); $this->db->join("product_to_store p2s", 'p.product_id = p2s.product_id'); $this->db->where("pd.language_id = '" . (int)$this->config->get('config_language_id') . "'"); $this->db->where("p.status = '1'"); //$result = $this->db->get(); $sql = $this->db->prepare(); $result = $this->db->query($sql); А вот смотрите.. Здесь я упростил, конечно Но согласитесь что все достаточно понятно, наглядно Нет многосимвольных строк. Просто внести логику в запрос. Змінено 26 червня 2016 користувачем chukcha Надіслати Поділитися на інших сайтах More sharing options... proplat Опубліковано: 26 червня 2016 Share Опубліковано: 26 червня 2016 Opencart 1.5x vs 2.x Скорость версия 2 быстрее (проверено на личном опыте), + для версии 2.х Адаптивный шаблон с коробки, так как для 1,5х куча адаптивных шаблонов, это ничья ОСмод, упрощает жизнь простым юзерам при установке модулей и ускоряет работу движка, насчет последнего не уверен так как вкмод про тоже довольно быстырй, + для версии 2.х модули сейчас больше модулей для 1.5х, но разработчики смотрят в будующее так что новики делают уже по 2.х и это тоже ничья версия 2.х имеют дополнительные шлюзи для оплаты, для СНГ это не очень актуально. Админка в 2.х стала круче в добавлены оповещения, + для версии 2.х в версии 2.х добавлены поля кастом тайтл чего нету в 1.5, + для версии 2.х Стоит ли менять 1,5 на 2,0 я лично считаю что не стоит если для этого действительно нету весомой причины. Если говорить про разработку нового магазина стоит смотреть в сторону 2,х так как время не стоит на месте. Надіслати Поділитися на інших сайтах More sharing options... Dotrox Опубліковано: 26 червня 2016 Share Опубліковано: 26 червня 2016 (змінено) Не возможно внести в код ядра доп методы, и их вызов. Не надо ничего в ядро вносить - надо использовать инверсию зависимостей (все современные популярные фреймворки так и работают). исправили вызовы producttotal где попало В ocStore это и так было уже исправлено. mysqli Я в 1.5 mysqli использую уже года 3. расскажите как например выборку модифицировать без *mod ? Если вместо написания всего запроса вручную использовать объектный подход, то с этим не будет никаких проблем. Например: $query = (new Product())->findAll(); $query->addWhere(['category_id' => $id]); $results = $query->execute(); Соответственно, система триггерит стандартное событие, например, beforeQueryExecute, модуль на него подписывается и может добавить, например, ещё свои addWhere, либо любые другие модификации в таком же стили. И главное, что это не вызовет никаких конфликтов между модулями, поскольку они не влазят в код, а используют внешнее стандартизированное апи. Змінено 26 червня 2016 користувачем Dotrox Надіслати Поділитися на інших сайтах More sharing options... ArtemPitov Опубліковано: 26 червня 2016 Share Опубліковано: 26 червня 2016 $query = (new Product())->findAll(); $query->addWhere(['category_id' => $id]); $results = $query->execute(); За это спасибо возьму на вооружение :-) Надіслати Поділитися на інших сайтах More sharing options... chukcha Опубліковано: 26 червня 2016 Share Опубліковано: 26 червня 2016 Ну.. это почти тоже что я и показал просто я показал более развернутый класс. Надіслати Поділитися на інших сайтах More sharing options... Dotrox Опубліковано: 26 червня 2016 Share Опубліковано: 26 червня 2016 $query = (new Product())->findAll(); $query->addWhere(['category_id' => $id]); $results = $query->execute(); За это спасибо возьму на вооружение :-) Только в ОК это сейчас работать не будет :) Ну.. это почти тоже что я и показал просто я показал более развернутый класс. Да. Я просто показал принцип формирования запроса вообще без написания SQL кода. Так бы это выглядело, если б в ОК была нормальная ORM. Подобным образом это выглядит в Yii2. Надіслати Поділитися на інших сайтах More sharing options... chukcha Опубліковано: 26 червня 2016 Share Опубліковано: 26 червня 2016 Ну.. здесь можно спорить до посинения Ведь $query->addWhere(['category_id' => $id]); Это уже есть часть sql.. $this->db->where("pd.language_id = '" . (int)$this->config->get('config_language_id') . "'");$this->db->where("p.status = '1'"); И без всяких Add - потому что укладывается в массив Надіслати Поділитися на інших сайтах More sharing options... Otvet Опубліковано: 26 червня 2016 Share Опубліковано: 26 червня 2016 (змінено) Вообще ушли в дебри Dotrox в данный момент, на OC 2.2 как без модификатора решите задачу "Не выводить товары с нулевым остатком" З.Ы. а мне нравится подход OC, проще и не ресурсозатратно Змінено 26 червня 2016 користувачем Otvet Надіслати Поділитися на інших сайтах More sharing options... chukcha Опубліковано: 26 червня 2016 Share Опубліковано: 26 червня 2016 В данный момент - никак При показанном мною подходе как видно, достаточно просто. Надіслати Поділитися на інших сайтах More sharing options... Dotrox Опубліковано: 26 червня 2016 Share Опубліковано: 26 червня 2016 Ведь $query->addWhere(['category_id' => $id]); Это уже есть часть sql.. Нет, это параметр, для запроса, но он может быть как угодно видоизменён (теоретически) перед добавлением непосредственно в sql. Собственно, при текущей структуре базы ОК в запросе не может быть просто category_id - это будет ptc.category_id (и это уже задача ORM зарезолвить все связи). Надіслати Поділитися на інших сайтах More sharing options... Dotrox Опубліковано: 26 червня 2016 Share Опубліковано: 26 червня 2016 (змінено) Dotrox в данный момент, на OC 2.2 как без модификатора решите задачу "Не выводить товары с нулевым остатком" А при чём тут данный момент? Я говорю, что вместо добавление в двойку модификатров из коробки, нужно было реализовать такую систему, ибо vQmod был просто вынужденным костылём из-за отсутствия нормальной архитектуры. А Дэниэль вместо создания нормальной архитектуры взял костыль и сделал аналог из коробки. Это, как если б в кабриолетах люди привязывали к спинке сидения зонт, чтоб от дождя защититься, а автопроизводители, посмотрев на это, вместо поднимающейся крыши сделали зонт впаянным в спинку прямо с конвеера. А вы бы ещё спросили: а как вы от дождя защититесь без этого впаянного зонта? :) Змінено 26 червня 2016 користувачем Dotrox Надіслати Поділитися на інших сайтах More sharing options... Otvet Опубліковано: 26 червня 2016 Share Опубліковано: 26 червня 2016 (змінено) То есть, если я никогда принципиально не использовал vQmod в данный момент, на OC 2.2 как без модификатора решите задачу "Не выводить товары с нулевым остатком" А при чём тут данный момент? Змінено 26 червня 2016 користувачем Otvet Надіслати Поділитися на інших сайтах More sharing options... Dotrox Опубліковано: 26 червня 2016 Share Опубліковано: 26 червня 2016 Otvet, и? Я не сказал, что я пишу модули при этом не используя vQmod! Я его в магазинах, которые делаю, не использовал никогда - вот о чём я говорил. А модули я вообще не пишу и именно из-за принципиального отказа от использования vQmod (а смысл делать очередной слайдер или модуль вывода товаров, где можно обойтись без vQmod - нет). У меня есть куча различных наработок, которыми я не могу поделиться именно из-за того, что все они затрагивают другие файлы, а это сейчас требует vQmod. Вот пример одной из таких наработок, которая могла бы быть бесплатным модулем: https://opencartforum.com/topic/62497-%D0%BE%D1%88%D0%B8%D0%B1%D0%BA%D0%B0-http-error-500/?do=findComment&comment=566165 И вы меняете тему! Как отсутствие сейчас в ОК возможности сделать что-то нормальное без модификаторов оправдывает то, что Дэниэль вместо создания нормальной системы расширения, просто интегрировал модификаторы? Надіслати Поділитися на інших сайтах More sharing options... Otvet Опубліковано: 26 червня 2016 Share Опубліковано: 26 червня 2016 Я его в магазинах, которые делаю, не использовал никогда - вот о чём я говорил. прямая правка кода? а пользователям тоже писать зайди туда измени то? И вы меняете тему! Как отсутствие сейчас в ОК возможности сделать что-то нормальное без модификаторов оправдывает то, что Дэниэль вместо создания нормальной системы расширения, просто интегрировал модификаторы? А каким боком то что OC не превратили в горе-фреймворк относится к данной теме? Вопрос стоит в выборе между 1.5 и 2 а не в том "Что могло бы быть" Надіслати Поділитися на інших сайтах More sharing options... Dotrox Опубліковано: 26 червня 2016 Share Опубліковано: 26 червня 2016 прямая правка кода? Да. а пользователям тоже писать зайди туда измени то? Читайте внимательно: Я не сказал, что я пишу модули при этом не используя vQmod! Я его в магазинах, которые делаю, не использовал никогда - вот о чём я говорил. А чтоб и vQmod не использовать и пользователей не просить вручную вносить правки, как раз и нужна нормальная архитектура. А каким боком то что OC не превратили в горе-фреймворк относится к данной теме? Вопрос стоит в выборе между 1.5 и 2 а не в том "Что могло бы быть" Нет, вопрос стоит в том, что вы назвали интеграцию костыля - преимуществом двойки перед 1.5. А на счёт "горе-фреймворка", то ОК как раз в него и превращается, там даже уже есть файл с соответствующим названием (/system/framework.php) :) А о фреймворках вообще: Мадженто изначально на Zend, ПрестаШоп начал переход на Symfony. Я не сторонник этих двух фреймворков (мне больше Yii нравится), но я не считаю, что велосипед с костылями лучше, чем современные паттерны и качественное профессиональное решение как база. В 1.5 на это всё ещё можно было закрыть глаза - наследие и всё такое, но 2.0 меня убила. Собственно, не понятно зачем эту версию вообще зарелизили, то есть, зачем релиз выпустили именно в тот момент - там местами тупо не хватает целых кусков кода. Например, в вишлисте метод для удаления товара из вишлиста пустой (на самом деле, он там лишний, ибо удаление идёт через параметр, который передаётся в метод index - очередной пример гавнокода в архитектуре ОК), а в методе добавления товара в вишлист не хватает записи в базу, всё пишется только в сессию (и это уже довольно ощутимый баг, ибо убивает смысл вишлиста). Запись вишлиста в базу появилась только в 2.1. Но намёки на новую архитектуру всё же есть, например, те же события, которые пока, правда, не особо используются. Надіслати Поділитися на інших сайтах More sharing options... Otvet Опубліковано: 27 червня 2016 Share Опубліковано: 27 червня 2016 DotroxЭто не я назвал, вы путаете Мой вопрос был лишь как вы обходитесь без *mod, ответ был получен "Прямая правка" Но это лишь частный случай Надеюсь в погоне за "правильной" архитектурой не докатится до уровня WP, где на пустом сайте с 4 записями время генерации страниц 700-800мс Надіслати Поділитися на інших сайтах More sharing options... IgorS Опубліковано: 27 червня 2016 Автор Share Опубліковано: 27 червня 2016 Я перевел два магазина...Третий сейчас перевожу... Лучше, не сказал бы, что стало сильно лучше... Если программист, какой делал, не рукожоп, то и 1,5 работать будет долго... Спасибо! Понял. Надіслати Поділитися на інших сайтах More sharing options... IgorS Опубліковано: 27 червня 2016 Автор Share Опубліковано: 27 червня 2016 Здравствуйте! Ещё раз благодарю всех кто ответил! Надіслати Поділитися на інших сайтах More sharing options... Назад 1 2 Вперед Сторінка 2 з 2 Створіть аккаунт або увійдіть для коментування Ви повинні бути користувачем, щоб залишити коментар Створити обліковий запис Зареєструйтеся для отримання облікового запису. Це просто! Зареєструвати аккаунт Вхід Уже зареєстровані? Увійдіть тут. Вхід зараз Share More sharing options... Передплатники 0 Перейти до списку тем Зараз на сторінці 0 користувачів Ні користувачів, які переглядиють цю сторінку Последние темы Последние дополнения Последние новости Вся активність Головна Opencart 2.x Opencart 2.x: Загальні питання Есть ли смысл обновлять осистор с 1.5.4.1 до 2+ Покупцям Оплата розширень фізичними особами Оплата розширень юридичними особами Політика повернень Розробникам Регламент розміщення розширень Регламент продажу та підтримки розширень Віртуальний обліковий запис автора Політика просування оголошень API каталогу розширень Вирішення спорів щодо авторських прав Корисна інформація Публічна оферта Політика повернень Політика конфіденційності Платіжна політика Політика передачі особистих даних Політика прозорості Останні розширення SP Telegram повідомлення FREE Автор: spectre Відключити порожні категорії Автор: spectre SEO Автор тексту категорії / фільтра / блогу з датою оновлення контенту + мікророзмітка Автор: radaevich Промо банери в категоріях товарів Автор: IHOR1989 Trend - адаптивний універсальний шаблон Автор: DSV × Уже зареєстровані? Ввійти Реєстрація Ваші замовлення Назад Придбані модулі та шаблони Ваші рахунки Лист очікувань Альтернативні контакти Форум Новини ocStore Назад Офіційний сайт Демо ocStore 3.0.3.2 Демо ocStore 2.3.0.2.4 Завантажити ocStore Документація Історія версій ocStore Блоги Модулі Шаблони Назад Безкоштовні шаблони Платні шаблони Де купувати модулі? Послуги FAQ OpenCart.Pro Назад Демо Купити Порівняння × Створити... Important Information На нашому сайті використовуються файли cookie і відбувається обробка деяких персональних даних користувачів, щоб поліпшити користувальницький інтерфейс. Щоб дізнатися для чого і які персональні дані ми обробляємо перейдіть за посиланням . Якщо Ви натиснете «Я даю згоду», це означає, що Ви розумієте і приймаєте всі умови, зазначені в цьому Повідомленні про конфіденційність. Я даю згоду
Otvet Опубліковано: 26 червня 2016 Share Опубліковано: 26 червня 2016 Не представляю как для огромных запросов вроде getproducts это возможно Я не это имел ввиду. Тут речь не идет о переработке архитектуры. Человек написал что обходится без модификаций, вот я спросил, как он обойдется если например нужно будет в выборке товаров только с положительным остатком выдавать? Надіслати Поділитися на інших сайтах More sharing options... chukcha Опубліковано: 26 червня 2016 Share Опубліковано: 26 червня 2016 (змінено) $this->db->select("p.product_id"); $this->db->select("(SELECT AVG(rating) AS total FROM " . DB_PREFIX . "review r1 WHERE r1.product_id = p.product_id AND r1.status = '1' GROUP BY r1.product_id) AS rating"); $this->db->select("(SELECT price FROM " . DB_PREFIX . "product_discount pd2 WHERE pd2.product_id = p.product_id AND pd2.customer_group_id = '" . (int)$this->config->get('config_customer_group_id') . "' AND pd2.quantity = '1' AND ((pd2.date_start = '0000-00-00' OR pd2.date_start < NOW()) AND (pd2.date_end = '0000-00-00' OR pd2.date_end > NOW())) ORDER BY pd2.priority ASC, pd2.price ASC LIMIT 1) AS discount"); $this->db->select("(SELECT price FROM " . DB_PREFIX . "product_special ps WHERE ps.product_id = p.product_id AND ps.customer_group_id = '" . (int)$this->config->get('config_customer_group_id') . "' AND ((ps.date_start = '0000-00-00' OR ps.date_start < NOW()) AND (ps.date_end = '0000-00-00' OR ps.date_end > NOW())) ORDER BY ps.priority ASC, ps.price ASC LIMIT 1) AS special"); $this->db->from("product p"); $this->db->join("product_description pd", 'p.product_id = pd.product_id'); $this->db->join("product_to_store p2s", 'p.product_id = p2s.product_id'); $this->db->where("pd.language_id = '" . (int)$this->config->get('config_language_id') . "'"); $this->db->where("p.status = '1'"); //$result = $this->db->get(); $sql = $this->db->prepare(); $result = $this->db->query($sql); А вот смотрите.. Здесь я упростил, конечно Но согласитесь что все достаточно понятно, наглядно Нет многосимвольных строк. Просто внести логику в запрос. Змінено 26 червня 2016 користувачем chukcha Надіслати Поділитися на інших сайтах More sharing options... proplat Опубліковано: 26 червня 2016 Share Опубліковано: 26 червня 2016 Opencart 1.5x vs 2.x Скорость версия 2 быстрее (проверено на личном опыте), + для версии 2.х Адаптивный шаблон с коробки, так как для 1,5х куча адаптивных шаблонов, это ничья ОСмод, упрощает жизнь простым юзерам при установке модулей и ускоряет работу движка, насчет последнего не уверен так как вкмод про тоже довольно быстырй, + для версии 2.х модули сейчас больше модулей для 1.5х, но разработчики смотрят в будующее так что новики делают уже по 2.х и это тоже ничья версия 2.х имеют дополнительные шлюзи для оплаты, для СНГ это не очень актуально. Админка в 2.х стала круче в добавлены оповещения, + для версии 2.х в версии 2.х добавлены поля кастом тайтл чего нету в 1.5, + для версии 2.х Стоит ли менять 1,5 на 2,0 я лично считаю что не стоит если для этого действительно нету весомой причины. Если говорить про разработку нового магазина стоит смотреть в сторону 2,х так как время не стоит на месте. Надіслати Поділитися на інших сайтах More sharing options... Dotrox Опубліковано: 26 червня 2016 Share Опубліковано: 26 червня 2016 (змінено) Не возможно внести в код ядра доп методы, и их вызов. Не надо ничего в ядро вносить - надо использовать инверсию зависимостей (все современные популярные фреймворки так и работают). исправили вызовы producttotal где попало В ocStore это и так было уже исправлено. mysqli Я в 1.5 mysqli использую уже года 3. расскажите как например выборку модифицировать без *mod ? Если вместо написания всего запроса вручную использовать объектный подход, то с этим не будет никаких проблем. Например: $query = (new Product())->findAll(); $query->addWhere(['category_id' => $id]); $results = $query->execute(); Соответственно, система триггерит стандартное событие, например, beforeQueryExecute, модуль на него подписывается и может добавить, например, ещё свои addWhere, либо любые другие модификации в таком же стили. И главное, что это не вызовет никаких конфликтов между модулями, поскольку они не влазят в код, а используют внешнее стандартизированное апи. Змінено 26 червня 2016 користувачем Dotrox Надіслати Поділитися на інших сайтах More sharing options... ArtemPitov Опубліковано: 26 червня 2016 Share Опубліковано: 26 червня 2016 $query = (new Product())->findAll(); $query->addWhere(['category_id' => $id]); $results = $query->execute(); За это спасибо возьму на вооружение :-) Надіслати Поділитися на інших сайтах More sharing options... chukcha Опубліковано: 26 червня 2016 Share Опубліковано: 26 червня 2016 Ну.. это почти тоже что я и показал просто я показал более развернутый класс. Надіслати Поділитися на інших сайтах More sharing options... Dotrox Опубліковано: 26 червня 2016 Share Опубліковано: 26 червня 2016 $query = (new Product())->findAll(); $query->addWhere(['category_id' => $id]); $results = $query->execute(); За это спасибо возьму на вооружение :-) Только в ОК это сейчас работать не будет :) Ну.. это почти тоже что я и показал просто я показал более развернутый класс. Да. Я просто показал принцип формирования запроса вообще без написания SQL кода. Так бы это выглядело, если б в ОК была нормальная ORM. Подобным образом это выглядит в Yii2. Надіслати Поділитися на інших сайтах More sharing options... chukcha Опубліковано: 26 червня 2016 Share Опубліковано: 26 червня 2016 Ну.. здесь можно спорить до посинения Ведь $query->addWhere(['category_id' => $id]); Это уже есть часть sql.. $this->db->where("pd.language_id = '" . (int)$this->config->get('config_language_id') . "'");$this->db->where("p.status = '1'"); И без всяких Add - потому что укладывается в массив Надіслати Поділитися на інших сайтах More sharing options... Otvet Опубліковано: 26 червня 2016 Share Опубліковано: 26 червня 2016 (змінено) Вообще ушли в дебри Dotrox в данный момент, на OC 2.2 как без модификатора решите задачу "Не выводить товары с нулевым остатком" З.Ы. а мне нравится подход OC, проще и не ресурсозатратно Змінено 26 червня 2016 користувачем Otvet Надіслати Поділитися на інших сайтах More sharing options... chukcha Опубліковано: 26 червня 2016 Share Опубліковано: 26 червня 2016 В данный момент - никак При показанном мною подходе как видно, достаточно просто. Надіслати Поділитися на інших сайтах More sharing options... Dotrox Опубліковано: 26 червня 2016 Share Опубліковано: 26 червня 2016 Ведь $query->addWhere(['category_id' => $id]); Это уже есть часть sql.. Нет, это параметр, для запроса, но он может быть как угодно видоизменён (теоретически) перед добавлением непосредственно в sql. Собственно, при текущей структуре базы ОК в запросе не может быть просто category_id - это будет ptc.category_id (и это уже задача ORM зарезолвить все связи). Надіслати Поділитися на інших сайтах More sharing options... Dotrox Опубліковано: 26 червня 2016 Share Опубліковано: 26 червня 2016 (змінено) Dotrox в данный момент, на OC 2.2 как без модификатора решите задачу "Не выводить товары с нулевым остатком" А при чём тут данный момент? Я говорю, что вместо добавление в двойку модификатров из коробки, нужно было реализовать такую систему, ибо vQmod был просто вынужденным костылём из-за отсутствия нормальной архитектуры. А Дэниэль вместо создания нормальной архитектуры взял костыль и сделал аналог из коробки. Это, как если б в кабриолетах люди привязывали к спинке сидения зонт, чтоб от дождя защититься, а автопроизводители, посмотрев на это, вместо поднимающейся крыши сделали зонт впаянным в спинку прямо с конвеера. А вы бы ещё спросили: а как вы от дождя защититесь без этого впаянного зонта? :) Змінено 26 червня 2016 користувачем Dotrox Надіслати Поділитися на інших сайтах More sharing options... Otvet Опубліковано: 26 червня 2016 Share Опубліковано: 26 червня 2016 (змінено) То есть, если я никогда принципиально не использовал vQmod в данный момент, на OC 2.2 как без модификатора решите задачу "Не выводить товары с нулевым остатком" А при чём тут данный момент? Змінено 26 червня 2016 користувачем Otvet Надіслати Поділитися на інших сайтах More sharing options... Dotrox Опубліковано: 26 червня 2016 Share Опубліковано: 26 червня 2016 Otvet, и? Я не сказал, что я пишу модули при этом не используя vQmod! Я его в магазинах, которые делаю, не использовал никогда - вот о чём я говорил. А модули я вообще не пишу и именно из-за принципиального отказа от использования vQmod (а смысл делать очередной слайдер или модуль вывода товаров, где можно обойтись без vQmod - нет). У меня есть куча различных наработок, которыми я не могу поделиться именно из-за того, что все они затрагивают другие файлы, а это сейчас требует vQmod. Вот пример одной из таких наработок, которая могла бы быть бесплатным модулем: https://opencartforum.com/topic/62497-%D0%BE%D1%88%D0%B8%D0%B1%D0%BA%D0%B0-http-error-500/?do=findComment&comment=566165 И вы меняете тему! Как отсутствие сейчас в ОК возможности сделать что-то нормальное без модификаторов оправдывает то, что Дэниэль вместо создания нормальной системы расширения, просто интегрировал модификаторы? Надіслати Поділитися на інших сайтах More sharing options... Otvet Опубліковано: 26 червня 2016 Share Опубліковано: 26 червня 2016 Я его в магазинах, которые делаю, не использовал никогда - вот о чём я говорил. прямая правка кода? а пользователям тоже писать зайди туда измени то? И вы меняете тему! Как отсутствие сейчас в ОК возможности сделать что-то нормальное без модификаторов оправдывает то, что Дэниэль вместо создания нормальной системы расширения, просто интегрировал модификаторы? А каким боком то что OC не превратили в горе-фреймворк относится к данной теме? Вопрос стоит в выборе между 1.5 и 2 а не в том "Что могло бы быть" Надіслати Поділитися на інших сайтах More sharing options... Dotrox Опубліковано: 26 червня 2016 Share Опубліковано: 26 червня 2016 прямая правка кода? Да. а пользователям тоже писать зайди туда измени то? Читайте внимательно: Я не сказал, что я пишу модули при этом не используя vQmod! Я его в магазинах, которые делаю, не использовал никогда - вот о чём я говорил. А чтоб и vQmod не использовать и пользователей не просить вручную вносить правки, как раз и нужна нормальная архитектура. А каким боком то что OC не превратили в горе-фреймворк относится к данной теме? Вопрос стоит в выборе между 1.5 и 2 а не в том "Что могло бы быть" Нет, вопрос стоит в том, что вы назвали интеграцию костыля - преимуществом двойки перед 1.5. А на счёт "горе-фреймворка", то ОК как раз в него и превращается, там даже уже есть файл с соответствующим названием (/system/framework.php) :) А о фреймворках вообще: Мадженто изначально на Zend, ПрестаШоп начал переход на Symfony. Я не сторонник этих двух фреймворков (мне больше Yii нравится), но я не считаю, что велосипед с костылями лучше, чем современные паттерны и качественное профессиональное решение как база. В 1.5 на это всё ещё можно было закрыть глаза - наследие и всё такое, но 2.0 меня убила. Собственно, не понятно зачем эту версию вообще зарелизили, то есть, зачем релиз выпустили именно в тот момент - там местами тупо не хватает целых кусков кода. Например, в вишлисте метод для удаления товара из вишлиста пустой (на самом деле, он там лишний, ибо удаление идёт через параметр, который передаётся в метод index - очередной пример гавнокода в архитектуре ОК), а в методе добавления товара в вишлист не хватает записи в базу, всё пишется только в сессию (и это уже довольно ощутимый баг, ибо убивает смысл вишлиста). Запись вишлиста в базу появилась только в 2.1. Но намёки на новую архитектуру всё же есть, например, те же события, которые пока, правда, не особо используются. Надіслати Поділитися на інших сайтах More sharing options... Otvet Опубліковано: 27 червня 2016 Share Опубліковано: 27 червня 2016 DotroxЭто не я назвал, вы путаете Мой вопрос был лишь как вы обходитесь без *mod, ответ был получен "Прямая правка" Но это лишь частный случай Надеюсь в погоне за "правильной" архитектурой не докатится до уровня WP, где на пустом сайте с 4 записями время генерации страниц 700-800мс Надіслати Поділитися на інших сайтах More sharing options... IgorS Опубліковано: 27 червня 2016 Автор Share Опубліковано: 27 червня 2016 Я перевел два магазина...Третий сейчас перевожу... Лучше, не сказал бы, что стало сильно лучше... Если программист, какой делал, не рукожоп, то и 1,5 работать будет долго... Спасибо! Понял. Надіслати Поділитися на інших сайтах More sharing options... IgorS Опубліковано: 27 червня 2016 Автор Share Опубліковано: 27 червня 2016 Здравствуйте! Ещё раз благодарю всех кто ответил! Надіслати Поділитися на інших сайтах More sharing options... Назад 1 2 Вперед Сторінка 2 з 2 Створіть аккаунт або увійдіть для коментування Ви повинні бути користувачем, щоб залишити коментар Створити обліковий запис Зареєструйтеся для отримання облікового запису. Це просто! Зареєструвати аккаунт Вхід Уже зареєстровані? Увійдіть тут. Вхід зараз Share More sharing options... Передплатники 0 Перейти до списку тем Зараз на сторінці 0 користувачів Ні користувачів, які переглядиють цю сторінку Последние темы Последние дополнения Последние новости Вся активність Головна Opencart 2.x Opencart 2.x: Загальні питання Есть ли смысл обновлять осистор с 1.5.4.1 до 2+ Покупцям Оплата розширень фізичними особами Оплата розширень юридичними особами Політика повернень Розробникам Регламент розміщення розширень Регламент продажу та підтримки розширень Віртуальний обліковий запис автора Політика просування оголошень API каталогу розширень Вирішення спорів щодо авторських прав Корисна інформація Публічна оферта Політика повернень Політика конфіденційності Платіжна політика Політика передачі особистих даних Політика прозорості Останні розширення SP Telegram повідомлення FREE Автор: spectre Відключити порожні категорії Автор: spectre SEO Автор тексту категорії / фільтра / блогу з датою оновлення контенту + мікророзмітка Автор: radaevich Промо банери в категоріях товарів Автор: IHOR1989 Trend - адаптивний універсальний шаблон Автор: DSV × Уже зареєстровані? Ввійти Реєстрація Ваші замовлення Назад Придбані модулі та шаблони Ваші рахунки Лист очікувань Альтернативні контакти Форум Новини ocStore Назад Офіційний сайт Демо ocStore 3.0.3.2 Демо ocStore 2.3.0.2.4 Завантажити ocStore Документація Історія версій ocStore Блоги Модулі Шаблони Назад Безкоштовні шаблони Платні шаблони Де купувати модулі? Послуги FAQ OpenCart.Pro Назад Демо Купити Порівняння × Створити... Important Information На нашому сайті використовуються файли cookie і відбувається обробка деяких персональних даних користувачів, щоб поліпшити користувальницький інтерфейс. Щоб дізнатися для чого і які персональні дані ми обробляємо перейдіть за посиланням . Якщо Ви натиснете «Я даю згоду», це означає, що Ви розумієте і приймаєте всі умови, зазначені в цьому Повідомленні про конфіденційність. Я даю згоду
chukcha Опубліковано: 26 червня 2016 Share Опубліковано: 26 червня 2016 (змінено) $this->db->select("p.product_id"); $this->db->select("(SELECT AVG(rating) AS total FROM " . DB_PREFIX . "review r1 WHERE r1.product_id = p.product_id AND r1.status = '1' GROUP BY r1.product_id) AS rating"); $this->db->select("(SELECT price FROM " . DB_PREFIX . "product_discount pd2 WHERE pd2.product_id = p.product_id AND pd2.customer_group_id = '" . (int)$this->config->get('config_customer_group_id') . "' AND pd2.quantity = '1' AND ((pd2.date_start = '0000-00-00' OR pd2.date_start < NOW()) AND (pd2.date_end = '0000-00-00' OR pd2.date_end > NOW())) ORDER BY pd2.priority ASC, pd2.price ASC LIMIT 1) AS discount"); $this->db->select("(SELECT price FROM " . DB_PREFIX . "product_special ps WHERE ps.product_id = p.product_id AND ps.customer_group_id = '" . (int)$this->config->get('config_customer_group_id') . "' AND ((ps.date_start = '0000-00-00' OR ps.date_start < NOW()) AND (ps.date_end = '0000-00-00' OR ps.date_end > NOW())) ORDER BY ps.priority ASC, ps.price ASC LIMIT 1) AS special"); $this->db->from("product p"); $this->db->join("product_description pd", 'p.product_id = pd.product_id'); $this->db->join("product_to_store p2s", 'p.product_id = p2s.product_id'); $this->db->where("pd.language_id = '" . (int)$this->config->get('config_language_id') . "'"); $this->db->where("p.status = '1'"); //$result = $this->db->get(); $sql = $this->db->prepare(); $result = $this->db->query($sql); А вот смотрите.. Здесь я упростил, конечно Но согласитесь что все достаточно понятно, наглядно Нет многосимвольных строк. Просто внести логику в запрос. Змінено 26 червня 2016 користувачем chukcha Надіслати Поділитися на інших сайтах More sharing options... proplat Опубліковано: 26 червня 2016 Share Опубліковано: 26 червня 2016 Opencart 1.5x vs 2.x Скорость версия 2 быстрее (проверено на личном опыте), + для версии 2.х Адаптивный шаблон с коробки, так как для 1,5х куча адаптивных шаблонов, это ничья ОСмод, упрощает жизнь простым юзерам при установке модулей и ускоряет работу движка, насчет последнего не уверен так как вкмод про тоже довольно быстырй, + для версии 2.х модули сейчас больше модулей для 1.5х, но разработчики смотрят в будующее так что новики делают уже по 2.х и это тоже ничья версия 2.х имеют дополнительные шлюзи для оплаты, для СНГ это не очень актуально. Админка в 2.х стала круче в добавлены оповещения, + для версии 2.х в версии 2.х добавлены поля кастом тайтл чего нету в 1.5, + для версии 2.х Стоит ли менять 1,5 на 2,0 я лично считаю что не стоит если для этого действительно нету весомой причины. Если говорить про разработку нового магазина стоит смотреть в сторону 2,х так как время не стоит на месте. Надіслати Поділитися на інших сайтах More sharing options... Dotrox Опубліковано: 26 червня 2016 Share Опубліковано: 26 червня 2016 (змінено) Не возможно внести в код ядра доп методы, и их вызов. Не надо ничего в ядро вносить - надо использовать инверсию зависимостей (все современные популярные фреймворки так и работают). исправили вызовы producttotal где попало В ocStore это и так было уже исправлено. mysqli Я в 1.5 mysqli использую уже года 3. расскажите как например выборку модифицировать без *mod ? Если вместо написания всего запроса вручную использовать объектный подход, то с этим не будет никаких проблем. Например: $query = (new Product())->findAll(); $query->addWhere(['category_id' => $id]); $results = $query->execute(); Соответственно, система триггерит стандартное событие, например, beforeQueryExecute, модуль на него подписывается и может добавить, например, ещё свои addWhere, либо любые другие модификации в таком же стили. И главное, что это не вызовет никаких конфликтов между модулями, поскольку они не влазят в код, а используют внешнее стандартизированное апи. Змінено 26 червня 2016 користувачем Dotrox Надіслати Поділитися на інших сайтах More sharing options... ArtemPitov Опубліковано: 26 червня 2016 Share Опубліковано: 26 червня 2016 $query = (new Product())->findAll(); $query->addWhere(['category_id' => $id]); $results = $query->execute(); За это спасибо возьму на вооружение :-) Надіслати Поділитися на інших сайтах More sharing options... chukcha Опубліковано: 26 червня 2016 Share Опубліковано: 26 червня 2016 Ну.. это почти тоже что я и показал просто я показал более развернутый класс. Надіслати Поділитися на інших сайтах More sharing options... Dotrox Опубліковано: 26 червня 2016 Share Опубліковано: 26 червня 2016 $query = (new Product())->findAll(); $query->addWhere(['category_id' => $id]); $results = $query->execute(); За это спасибо возьму на вооружение :-) Только в ОК это сейчас работать не будет :) Ну.. это почти тоже что я и показал просто я показал более развернутый класс. Да. Я просто показал принцип формирования запроса вообще без написания SQL кода. Так бы это выглядело, если б в ОК была нормальная ORM. Подобным образом это выглядит в Yii2. Надіслати Поділитися на інших сайтах More sharing options... chukcha Опубліковано: 26 червня 2016 Share Опубліковано: 26 червня 2016 Ну.. здесь можно спорить до посинения Ведь $query->addWhere(['category_id' => $id]); Это уже есть часть sql.. $this->db->where("pd.language_id = '" . (int)$this->config->get('config_language_id') . "'");$this->db->where("p.status = '1'"); И без всяких Add - потому что укладывается в массив Надіслати Поділитися на інших сайтах More sharing options... Otvet Опубліковано: 26 червня 2016 Share Опубліковано: 26 червня 2016 (змінено) Вообще ушли в дебри Dotrox в данный момент, на OC 2.2 как без модификатора решите задачу "Не выводить товары с нулевым остатком" З.Ы. а мне нравится подход OC, проще и не ресурсозатратно Змінено 26 червня 2016 користувачем Otvet Надіслати Поділитися на інших сайтах More sharing options... chukcha Опубліковано: 26 червня 2016 Share Опубліковано: 26 червня 2016 В данный момент - никак При показанном мною подходе как видно, достаточно просто. Надіслати Поділитися на інших сайтах More sharing options... Dotrox Опубліковано: 26 червня 2016 Share Опубліковано: 26 червня 2016 Ведь $query->addWhere(['category_id' => $id]); Это уже есть часть sql.. Нет, это параметр, для запроса, но он может быть как угодно видоизменён (теоретически) перед добавлением непосредственно в sql. Собственно, при текущей структуре базы ОК в запросе не может быть просто category_id - это будет ptc.category_id (и это уже задача ORM зарезолвить все связи). Надіслати Поділитися на інших сайтах More sharing options... Dotrox Опубліковано: 26 червня 2016 Share Опубліковано: 26 червня 2016 (змінено) Dotrox в данный момент, на OC 2.2 как без модификатора решите задачу "Не выводить товары с нулевым остатком" А при чём тут данный момент? Я говорю, что вместо добавление в двойку модификатров из коробки, нужно было реализовать такую систему, ибо vQmod был просто вынужденным костылём из-за отсутствия нормальной архитектуры. А Дэниэль вместо создания нормальной архитектуры взял костыль и сделал аналог из коробки. Это, как если б в кабриолетах люди привязывали к спинке сидения зонт, чтоб от дождя защититься, а автопроизводители, посмотрев на это, вместо поднимающейся крыши сделали зонт впаянным в спинку прямо с конвеера. А вы бы ещё спросили: а как вы от дождя защититесь без этого впаянного зонта? :) Змінено 26 червня 2016 користувачем Dotrox Надіслати Поділитися на інших сайтах More sharing options... Otvet Опубліковано: 26 червня 2016 Share Опубліковано: 26 червня 2016 (змінено) То есть, если я никогда принципиально не использовал vQmod в данный момент, на OC 2.2 как без модификатора решите задачу "Не выводить товары с нулевым остатком" А при чём тут данный момент? Змінено 26 червня 2016 користувачем Otvet Надіслати Поділитися на інших сайтах More sharing options... Dotrox Опубліковано: 26 червня 2016 Share Опубліковано: 26 червня 2016 Otvet, и? Я не сказал, что я пишу модули при этом не используя vQmod! Я его в магазинах, которые делаю, не использовал никогда - вот о чём я говорил. А модули я вообще не пишу и именно из-за принципиального отказа от использования vQmod (а смысл делать очередной слайдер или модуль вывода товаров, где можно обойтись без vQmod - нет). У меня есть куча различных наработок, которыми я не могу поделиться именно из-за того, что все они затрагивают другие файлы, а это сейчас требует vQmod. Вот пример одной из таких наработок, которая могла бы быть бесплатным модулем: https://opencartforum.com/topic/62497-%D0%BE%D1%88%D0%B8%D0%B1%D0%BA%D0%B0-http-error-500/?do=findComment&comment=566165 И вы меняете тему! Как отсутствие сейчас в ОК возможности сделать что-то нормальное без модификаторов оправдывает то, что Дэниэль вместо создания нормальной системы расширения, просто интегрировал модификаторы? Надіслати Поділитися на інших сайтах More sharing options... Otvet Опубліковано: 26 червня 2016 Share Опубліковано: 26 червня 2016 Я его в магазинах, которые делаю, не использовал никогда - вот о чём я говорил. прямая правка кода? а пользователям тоже писать зайди туда измени то? И вы меняете тему! Как отсутствие сейчас в ОК возможности сделать что-то нормальное без модификаторов оправдывает то, что Дэниэль вместо создания нормальной системы расширения, просто интегрировал модификаторы? А каким боком то что OC не превратили в горе-фреймворк относится к данной теме? Вопрос стоит в выборе между 1.5 и 2 а не в том "Что могло бы быть" Надіслати Поділитися на інших сайтах More sharing options... Dotrox Опубліковано: 26 червня 2016 Share Опубліковано: 26 червня 2016 прямая правка кода? Да. а пользователям тоже писать зайди туда измени то? Читайте внимательно: Я не сказал, что я пишу модули при этом не используя vQmod! Я его в магазинах, которые делаю, не использовал никогда - вот о чём я говорил. А чтоб и vQmod не использовать и пользователей не просить вручную вносить правки, как раз и нужна нормальная архитектура. А каким боком то что OC не превратили в горе-фреймворк относится к данной теме? Вопрос стоит в выборе между 1.5 и 2 а не в том "Что могло бы быть" Нет, вопрос стоит в том, что вы назвали интеграцию костыля - преимуществом двойки перед 1.5. А на счёт "горе-фреймворка", то ОК как раз в него и превращается, там даже уже есть файл с соответствующим названием (/system/framework.php) :) А о фреймворках вообще: Мадженто изначально на Zend, ПрестаШоп начал переход на Symfony. Я не сторонник этих двух фреймворков (мне больше Yii нравится), но я не считаю, что велосипед с костылями лучше, чем современные паттерны и качественное профессиональное решение как база. В 1.5 на это всё ещё можно было закрыть глаза - наследие и всё такое, но 2.0 меня убила. Собственно, не понятно зачем эту версию вообще зарелизили, то есть, зачем релиз выпустили именно в тот момент - там местами тупо не хватает целых кусков кода. Например, в вишлисте метод для удаления товара из вишлиста пустой (на самом деле, он там лишний, ибо удаление идёт через параметр, который передаётся в метод index - очередной пример гавнокода в архитектуре ОК), а в методе добавления товара в вишлист не хватает записи в базу, всё пишется только в сессию (и это уже довольно ощутимый баг, ибо убивает смысл вишлиста). Запись вишлиста в базу появилась только в 2.1. Но намёки на новую архитектуру всё же есть, например, те же события, которые пока, правда, не особо используются. Надіслати Поділитися на інших сайтах More sharing options... Otvet Опубліковано: 27 червня 2016 Share Опубліковано: 27 червня 2016 DotroxЭто не я назвал, вы путаете Мой вопрос был лишь как вы обходитесь без *mod, ответ был получен "Прямая правка" Но это лишь частный случай Надеюсь в погоне за "правильной" архитектурой не докатится до уровня WP, где на пустом сайте с 4 записями время генерации страниц 700-800мс Надіслати Поділитися на інших сайтах More sharing options... IgorS Опубліковано: 27 червня 2016 Автор Share Опубліковано: 27 червня 2016 Я перевел два магазина...Третий сейчас перевожу... Лучше, не сказал бы, что стало сильно лучше... Если программист, какой делал, не рукожоп, то и 1,5 работать будет долго... Спасибо! Понял. Надіслати Поділитися на інших сайтах More sharing options... IgorS Опубліковано: 27 червня 2016 Автор Share Опубліковано: 27 червня 2016 Здравствуйте! Ещё раз благодарю всех кто ответил! Надіслати Поділитися на інших сайтах More sharing options... Назад 1 2 Вперед Сторінка 2 з 2 Створіть аккаунт або увійдіть для коментування Ви повинні бути користувачем, щоб залишити коментар Створити обліковий запис Зареєструйтеся для отримання облікового запису. Це просто! Зареєструвати аккаунт Вхід Уже зареєстровані? Увійдіть тут. Вхід зараз Share More sharing options... Передплатники 0 Перейти до списку тем Зараз на сторінці 0 користувачів Ні користувачів, які переглядиють цю сторінку Последние темы Последние дополнения Последние новости Вся активність Головна Opencart 2.x Opencart 2.x: Загальні питання Есть ли смысл обновлять осистор с 1.5.4.1 до 2+ Покупцям Оплата розширень фізичними особами Оплата розширень юридичними особами Політика повернень Розробникам Регламент розміщення розширень Регламент продажу та підтримки розширень Віртуальний обліковий запис автора Політика просування оголошень API каталогу розширень Вирішення спорів щодо авторських прав Корисна інформація Публічна оферта Політика повернень Політика конфіденційності Платіжна політика Політика передачі особистих даних Політика прозорості Останні розширення SP Telegram повідомлення FREE Автор: spectre Відключити порожні категорії Автор: spectre SEO Автор тексту категорії / фільтра / блогу з датою оновлення контенту + мікророзмітка Автор: radaevich Промо банери в категоріях товарів Автор: IHOR1989 Trend - адаптивний універсальний шаблон Автор: DSV × Уже зареєстровані? Ввійти Реєстрація Ваші замовлення Назад Придбані модулі та шаблони Ваші рахунки Лист очікувань Альтернативні контакти Форум Новини ocStore Назад Офіційний сайт Демо ocStore 3.0.3.2 Демо ocStore 2.3.0.2.4 Завантажити ocStore Документація Історія версій ocStore Блоги Модулі Шаблони Назад Безкоштовні шаблони Платні шаблони Де купувати модулі? Послуги FAQ OpenCart.Pro Назад Демо Купити Порівняння × Створити... Important Information На нашому сайті використовуються файли cookie і відбувається обробка деяких персональних даних користувачів, щоб поліпшити користувальницький інтерфейс. Щоб дізнатися для чого і які персональні дані ми обробляємо перейдіть за посиланням . Якщо Ви натиснете «Я даю згоду», це означає, що Ви розумієте і приймаєте всі умови, зазначені в цьому Повідомленні про конфіденційність. Я даю згоду
proplat Опубліковано: 26 червня 2016 Share Опубліковано: 26 червня 2016 Opencart 1.5x vs 2.x Скорость версия 2 быстрее (проверено на личном опыте), + для версии 2.х Адаптивный шаблон с коробки, так как для 1,5х куча адаптивных шаблонов, это ничья ОСмод, упрощает жизнь простым юзерам при установке модулей и ускоряет работу движка, насчет последнего не уверен так как вкмод про тоже довольно быстырй, + для версии 2.х модули сейчас больше модулей для 1.5х, но разработчики смотрят в будующее так что новики делают уже по 2.х и это тоже ничья версия 2.х имеют дополнительные шлюзи для оплаты, для СНГ это не очень актуально. Админка в 2.х стала круче в добавлены оповещения, + для версии 2.х в версии 2.х добавлены поля кастом тайтл чего нету в 1.5, + для версии 2.х Стоит ли менять 1,5 на 2,0 я лично считаю что не стоит если для этого действительно нету весомой причины. Если говорить про разработку нового магазина стоит смотреть в сторону 2,х так как время не стоит на месте. Надіслати Поділитися на інших сайтах More sharing options...
Dotrox Опубліковано: 26 червня 2016 Share Опубліковано: 26 червня 2016 (змінено) Не возможно внести в код ядра доп методы, и их вызов. Не надо ничего в ядро вносить - надо использовать инверсию зависимостей (все современные популярные фреймворки так и работают). исправили вызовы producttotal где попало В ocStore это и так было уже исправлено. mysqli Я в 1.5 mysqli использую уже года 3. расскажите как например выборку модифицировать без *mod ? Если вместо написания всего запроса вручную использовать объектный подход, то с этим не будет никаких проблем. Например: $query = (new Product())->findAll(); $query->addWhere(['category_id' => $id]); $results = $query->execute(); Соответственно, система триггерит стандартное событие, например, beforeQueryExecute, модуль на него подписывается и может добавить, например, ещё свои addWhere, либо любые другие модификации в таком же стили. И главное, что это не вызовет никаких конфликтов между модулями, поскольку они не влазят в код, а используют внешнее стандартизированное апи. Змінено 26 червня 2016 користувачем Dotrox Надіслати Поділитися на інших сайтах More sharing options...
ArtemPitov Опубліковано: 26 червня 2016 Share Опубліковано: 26 червня 2016 $query = (new Product())->findAll(); $query->addWhere(['category_id' => $id]); $results = $query->execute(); За это спасибо возьму на вооружение :-) Надіслати Поділитися на інших сайтах More sharing options... chukcha Опубліковано: 26 червня 2016 Share Опубліковано: 26 червня 2016 Ну.. это почти тоже что я и показал просто я показал более развернутый класс. Надіслати Поділитися на інших сайтах More sharing options... Dotrox Опубліковано: 26 червня 2016 Share Опубліковано: 26 червня 2016 $query = (new Product())->findAll(); $query->addWhere(['category_id' => $id]); $results = $query->execute(); За это спасибо возьму на вооружение :-) Только в ОК это сейчас работать не будет :) Ну.. это почти тоже что я и показал просто я показал более развернутый класс. Да. Я просто показал принцип формирования запроса вообще без написания SQL кода. Так бы это выглядело, если б в ОК была нормальная ORM. Подобным образом это выглядит в Yii2. Надіслати Поділитися на інших сайтах More sharing options... chukcha Опубліковано: 26 червня 2016 Share Опубліковано: 26 червня 2016 Ну.. здесь можно спорить до посинения Ведь $query->addWhere(['category_id' => $id]); Это уже есть часть sql.. $this->db->where("pd.language_id = '" . (int)$this->config->get('config_language_id') . "'");$this->db->where("p.status = '1'"); И без всяких Add - потому что укладывается в массив Надіслати Поділитися на інших сайтах More sharing options... Otvet Опубліковано: 26 червня 2016 Share Опубліковано: 26 червня 2016 (змінено) Вообще ушли в дебри Dotrox в данный момент, на OC 2.2 как без модификатора решите задачу "Не выводить товары с нулевым остатком" З.Ы. а мне нравится подход OC, проще и не ресурсозатратно Змінено 26 червня 2016 користувачем Otvet Надіслати Поділитися на інших сайтах More sharing options... chukcha Опубліковано: 26 червня 2016 Share Опубліковано: 26 червня 2016 В данный момент - никак При показанном мною подходе как видно, достаточно просто. Надіслати Поділитися на інших сайтах More sharing options... Dotrox Опубліковано: 26 червня 2016 Share Опубліковано: 26 червня 2016 Ведь $query->addWhere(['category_id' => $id]); Это уже есть часть sql.. Нет, это параметр, для запроса, но он может быть как угодно видоизменён (теоретически) перед добавлением непосредственно в sql. Собственно, при текущей структуре базы ОК в запросе не может быть просто category_id - это будет ptc.category_id (и это уже задача ORM зарезолвить все связи). Надіслати Поділитися на інших сайтах More sharing options... Dotrox Опубліковано: 26 червня 2016 Share Опубліковано: 26 червня 2016 (змінено) Dotrox в данный момент, на OC 2.2 как без модификатора решите задачу "Не выводить товары с нулевым остатком" А при чём тут данный момент? Я говорю, что вместо добавление в двойку модификатров из коробки, нужно было реализовать такую систему, ибо vQmod был просто вынужденным костылём из-за отсутствия нормальной архитектуры. А Дэниэль вместо создания нормальной архитектуры взял костыль и сделал аналог из коробки. Это, как если б в кабриолетах люди привязывали к спинке сидения зонт, чтоб от дождя защититься, а автопроизводители, посмотрев на это, вместо поднимающейся крыши сделали зонт впаянным в спинку прямо с конвеера. А вы бы ещё спросили: а как вы от дождя защититесь без этого впаянного зонта? :) Змінено 26 червня 2016 користувачем Dotrox Надіслати Поділитися на інших сайтах More sharing options... Otvet Опубліковано: 26 червня 2016 Share Опубліковано: 26 червня 2016 (змінено) То есть, если я никогда принципиально не использовал vQmod в данный момент, на OC 2.2 как без модификатора решите задачу "Не выводить товары с нулевым остатком" А при чём тут данный момент? Змінено 26 червня 2016 користувачем Otvet Надіслати Поділитися на інших сайтах More sharing options... Dotrox Опубліковано: 26 червня 2016 Share Опубліковано: 26 червня 2016 Otvet, и? Я не сказал, что я пишу модули при этом не используя vQmod! Я его в магазинах, которые делаю, не использовал никогда - вот о чём я говорил. А модули я вообще не пишу и именно из-за принципиального отказа от использования vQmod (а смысл делать очередной слайдер или модуль вывода товаров, где можно обойтись без vQmod - нет). У меня есть куча различных наработок, которыми я не могу поделиться именно из-за того, что все они затрагивают другие файлы, а это сейчас требует vQmod. Вот пример одной из таких наработок, которая могла бы быть бесплатным модулем: https://opencartforum.com/topic/62497-%D0%BE%D1%88%D0%B8%D0%B1%D0%BA%D0%B0-http-error-500/?do=findComment&comment=566165 И вы меняете тему! Как отсутствие сейчас в ОК возможности сделать что-то нормальное без модификаторов оправдывает то, что Дэниэль вместо создания нормальной системы расширения, просто интегрировал модификаторы? Надіслати Поділитися на інших сайтах More sharing options... Otvet Опубліковано: 26 червня 2016 Share Опубліковано: 26 червня 2016 Я его в магазинах, которые делаю, не использовал никогда - вот о чём я говорил. прямая правка кода? а пользователям тоже писать зайди туда измени то? И вы меняете тему! Как отсутствие сейчас в ОК возможности сделать что-то нормальное без модификаторов оправдывает то, что Дэниэль вместо создания нормальной системы расширения, просто интегрировал модификаторы? А каким боком то что OC не превратили в горе-фреймворк относится к данной теме? Вопрос стоит в выборе между 1.5 и 2 а не в том "Что могло бы быть" Надіслати Поділитися на інших сайтах More sharing options... Dotrox Опубліковано: 26 червня 2016 Share Опубліковано: 26 червня 2016 прямая правка кода? Да. а пользователям тоже писать зайди туда измени то? Читайте внимательно: Я не сказал, что я пишу модули при этом не используя vQmod! Я его в магазинах, которые делаю, не использовал никогда - вот о чём я говорил. А чтоб и vQmod не использовать и пользователей не просить вручную вносить правки, как раз и нужна нормальная архитектура. А каким боком то что OC не превратили в горе-фреймворк относится к данной теме? Вопрос стоит в выборе между 1.5 и 2 а не в том "Что могло бы быть" Нет, вопрос стоит в том, что вы назвали интеграцию костыля - преимуществом двойки перед 1.5. А на счёт "горе-фреймворка", то ОК как раз в него и превращается, там даже уже есть файл с соответствующим названием (/system/framework.php) :) А о фреймворках вообще: Мадженто изначально на Zend, ПрестаШоп начал переход на Symfony. Я не сторонник этих двух фреймворков (мне больше Yii нравится), но я не считаю, что велосипед с костылями лучше, чем современные паттерны и качественное профессиональное решение как база. В 1.5 на это всё ещё можно было закрыть глаза - наследие и всё такое, но 2.0 меня убила. Собственно, не понятно зачем эту версию вообще зарелизили, то есть, зачем релиз выпустили именно в тот момент - там местами тупо не хватает целых кусков кода. Например, в вишлисте метод для удаления товара из вишлиста пустой (на самом деле, он там лишний, ибо удаление идёт через параметр, который передаётся в метод index - очередной пример гавнокода в архитектуре ОК), а в методе добавления товара в вишлист не хватает записи в базу, всё пишется только в сессию (и это уже довольно ощутимый баг, ибо убивает смысл вишлиста). Запись вишлиста в базу появилась только в 2.1. Но намёки на новую архитектуру всё же есть, например, те же события, которые пока, правда, не особо используются. Надіслати Поділитися на інших сайтах More sharing options... Otvet Опубліковано: 27 червня 2016 Share Опубліковано: 27 червня 2016 DotroxЭто не я назвал, вы путаете Мой вопрос был лишь как вы обходитесь без *mod, ответ был получен "Прямая правка" Но это лишь частный случай Надеюсь в погоне за "правильной" архитектурой не докатится до уровня WP, где на пустом сайте с 4 записями время генерации страниц 700-800мс Надіслати Поділитися на інших сайтах More sharing options... IgorS Опубліковано: 27 червня 2016 Автор Share Опубліковано: 27 червня 2016 Я перевел два магазина...Третий сейчас перевожу... Лучше, не сказал бы, что стало сильно лучше... Если программист, какой делал, не рукожоп, то и 1,5 работать будет долго... Спасибо! Понял. Надіслати Поділитися на інших сайтах More sharing options... IgorS Опубліковано: 27 червня 2016 Автор Share Опубліковано: 27 червня 2016 Здравствуйте! Ещё раз благодарю всех кто ответил! Надіслати Поділитися на інших сайтах More sharing options... Назад 1 2 Вперед Сторінка 2 з 2 Створіть аккаунт або увійдіть для коментування Ви повинні бути користувачем, щоб залишити коментар Створити обліковий запис Зареєструйтеся для отримання облікового запису. Це просто! Зареєструвати аккаунт Вхід Уже зареєстровані? Увійдіть тут. Вхід зараз Share More sharing options... Передплатники 0 Перейти до списку тем Зараз на сторінці 0 користувачів Ні користувачів, які переглядиють цю сторінку Последние темы Последние дополнения Последние новости Вся активність Головна Opencart 2.x Opencart 2.x: Загальні питання Есть ли смысл обновлять осистор с 1.5.4.1 до 2+ Покупцям Оплата розширень фізичними особами Оплата розширень юридичними особами Політика повернень Розробникам Регламент розміщення розширень Регламент продажу та підтримки розширень Віртуальний обліковий запис автора Політика просування оголошень API каталогу розширень Вирішення спорів щодо авторських прав Корисна інформація Публічна оферта Політика повернень Політика конфіденційності Платіжна політика Політика передачі особистих даних Політика прозорості Останні розширення SP Telegram повідомлення FREE Автор: spectre Відключити порожні категорії Автор: spectre SEO Автор тексту категорії / фільтра / блогу з датою оновлення контенту + мікророзмітка Автор: radaevich Промо банери в категоріях товарів Автор: IHOR1989 Trend - адаптивний універсальний шаблон Автор: DSV × Уже зареєстровані? Ввійти Реєстрація Ваші замовлення Назад Придбані модулі та шаблони Ваші рахунки Лист очікувань Альтернативні контакти Форум Новини ocStore Назад Офіційний сайт Демо ocStore 3.0.3.2 Демо ocStore 2.3.0.2.4 Завантажити ocStore Документація Історія версій ocStore Блоги Модулі Шаблони Назад Безкоштовні шаблони Платні шаблони Де купувати модулі? Послуги FAQ OpenCart.Pro Назад Демо Купити Порівняння × Створити... Important Information На нашому сайті використовуються файли cookie і відбувається обробка деяких персональних даних користувачів, щоб поліпшити користувальницький інтерфейс. Щоб дізнатися для чого і які персональні дані ми обробляємо перейдіть за посиланням . Якщо Ви натиснете «Я даю згоду», це означає, що Ви розумієте і приймаєте всі умови, зазначені в цьому Повідомленні про конфіденційність. Я даю згоду
chukcha Опубліковано: 26 червня 2016 Share Опубліковано: 26 червня 2016 Ну.. это почти тоже что я и показал просто я показал более развернутый класс. Надіслати Поділитися на інших сайтах More sharing options... Dotrox Опубліковано: 26 червня 2016 Share Опубліковано: 26 червня 2016 $query = (new Product())->findAll(); $query->addWhere(['category_id' => $id]); $results = $query->execute(); За это спасибо возьму на вооружение :-) Только в ОК это сейчас работать не будет :) Ну.. это почти тоже что я и показал просто я показал более развернутый класс. Да. Я просто показал принцип формирования запроса вообще без написания SQL кода. Так бы это выглядело, если б в ОК была нормальная ORM. Подобным образом это выглядит в Yii2. Надіслати Поділитися на інших сайтах More sharing options... chukcha Опубліковано: 26 червня 2016 Share Опубліковано: 26 червня 2016 Ну.. здесь можно спорить до посинения Ведь $query->addWhere(['category_id' => $id]); Это уже есть часть sql.. $this->db->where("pd.language_id = '" . (int)$this->config->get('config_language_id') . "'");$this->db->where("p.status = '1'"); И без всяких Add - потому что укладывается в массив Надіслати Поділитися на інших сайтах More sharing options... Otvet Опубліковано: 26 червня 2016 Share Опубліковано: 26 червня 2016 (змінено) Вообще ушли в дебри Dotrox в данный момент, на OC 2.2 как без модификатора решите задачу "Не выводить товары с нулевым остатком" З.Ы. а мне нравится подход OC, проще и не ресурсозатратно Змінено 26 червня 2016 користувачем Otvet Надіслати Поділитися на інших сайтах More sharing options... chukcha Опубліковано: 26 червня 2016 Share Опубліковано: 26 червня 2016 В данный момент - никак При показанном мною подходе как видно, достаточно просто. Надіслати Поділитися на інших сайтах More sharing options... Dotrox Опубліковано: 26 червня 2016 Share Опубліковано: 26 червня 2016 Ведь $query->addWhere(['category_id' => $id]); Это уже есть часть sql.. Нет, это параметр, для запроса, но он может быть как угодно видоизменён (теоретически) перед добавлением непосредственно в sql. Собственно, при текущей структуре базы ОК в запросе не может быть просто category_id - это будет ptc.category_id (и это уже задача ORM зарезолвить все связи). Надіслати Поділитися на інших сайтах More sharing options... Dotrox Опубліковано: 26 червня 2016 Share Опубліковано: 26 червня 2016 (змінено) Dotrox в данный момент, на OC 2.2 как без модификатора решите задачу "Не выводить товары с нулевым остатком" А при чём тут данный момент? Я говорю, что вместо добавление в двойку модификатров из коробки, нужно было реализовать такую систему, ибо vQmod был просто вынужденным костылём из-за отсутствия нормальной архитектуры. А Дэниэль вместо создания нормальной архитектуры взял костыль и сделал аналог из коробки. Это, как если б в кабриолетах люди привязывали к спинке сидения зонт, чтоб от дождя защититься, а автопроизводители, посмотрев на это, вместо поднимающейся крыши сделали зонт впаянным в спинку прямо с конвеера. А вы бы ещё спросили: а как вы от дождя защититесь без этого впаянного зонта? :) Змінено 26 червня 2016 користувачем Dotrox Надіслати Поділитися на інших сайтах More sharing options... Otvet Опубліковано: 26 червня 2016 Share Опубліковано: 26 червня 2016 (змінено) То есть, если я никогда принципиально не использовал vQmod в данный момент, на OC 2.2 как без модификатора решите задачу "Не выводить товары с нулевым остатком" А при чём тут данный момент? Змінено 26 червня 2016 користувачем Otvet Надіслати Поділитися на інших сайтах More sharing options... Dotrox Опубліковано: 26 червня 2016 Share Опубліковано: 26 червня 2016 Otvet, и? Я не сказал, что я пишу модули при этом не используя vQmod! Я его в магазинах, которые делаю, не использовал никогда - вот о чём я говорил. А модули я вообще не пишу и именно из-за принципиального отказа от использования vQmod (а смысл делать очередной слайдер или модуль вывода товаров, где можно обойтись без vQmod - нет). У меня есть куча различных наработок, которыми я не могу поделиться именно из-за того, что все они затрагивают другие файлы, а это сейчас требует vQmod. Вот пример одной из таких наработок, которая могла бы быть бесплатным модулем: https://opencartforum.com/topic/62497-%D0%BE%D1%88%D0%B8%D0%B1%D0%BA%D0%B0-http-error-500/?do=findComment&comment=566165 И вы меняете тему! Как отсутствие сейчас в ОК возможности сделать что-то нормальное без модификаторов оправдывает то, что Дэниэль вместо создания нормальной системы расширения, просто интегрировал модификаторы? Надіслати Поділитися на інших сайтах More sharing options... Otvet Опубліковано: 26 червня 2016 Share Опубліковано: 26 червня 2016 Я его в магазинах, которые делаю, не использовал никогда - вот о чём я говорил. прямая правка кода? а пользователям тоже писать зайди туда измени то? И вы меняете тему! Как отсутствие сейчас в ОК возможности сделать что-то нормальное без модификаторов оправдывает то, что Дэниэль вместо создания нормальной системы расширения, просто интегрировал модификаторы? А каким боком то что OC не превратили в горе-фреймворк относится к данной теме? Вопрос стоит в выборе между 1.5 и 2 а не в том "Что могло бы быть" Надіслати Поділитися на інших сайтах More sharing options... Dotrox Опубліковано: 26 червня 2016 Share Опубліковано: 26 червня 2016 прямая правка кода? Да. а пользователям тоже писать зайди туда измени то? Читайте внимательно: Я не сказал, что я пишу модули при этом не используя vQmod! Я его в магазинах, которые делаю, не использовал никогда - вот о чём я говорил. А чтоб и vQmod не использовать и пользователей не просить вручную вносить правки, как раз и нужна нормальная архитектура. А каким боком то что OC не превратили в горе-фреймворк относится к данной теме? Вопрос стоит в выборе между 1.5 и 2 а не в том "Что могло бы быть" Нет, вопрос стоит в том, что вы назвали интеграцию костыля - преимуществом двойки перед 1.5. А на счёт "горе-фреймворка", то ОК как раз в него и превращается, там даже уже есть файл с соответствующим названием (/system/framework.php) :) А о фреймворках вообще: Мадженто изначально на Zend, ПрестаШоп начал переход на Symfony. Я не сторонник этих двух фреймворков (мне больше Yii нравится), но я не считаю, что велосипед с костылями лучше, чем современные паттерны и качественное профессиональное решение как база. В 1.5 на это всё ещё можно было закрыть глаза - наследие и всё такое, но 2.0 меня убила. Собственно, не понятно зачем эту версию вообще зарелизили, то есть, зачем релиз выпустили именно в тот момент - там местами тупо не хватает целых кусков кода. Например, в вишлисте метод для удаления товара из вишлиста пустой (на самом деле, он там лишний, ибо удаление идёт через параметр, который передаётся в метод index - очередной пример гавнокода в архитектуре ОК), а в методе добавления товара в вишлист не хватает записи в базу, всё пишется только в сессию (и это уже довольно ощутимый баг, ибо убивает смысл вишлиста). Запись вишлиста в базу появилась только в 2.1. Но намёки на новую архитектуру всё же есть, например, те же события, которые пока, правда, не особо используются. Надіслати Поділитися на інших сайтах More sharing options... Otvet Опубліковано: 27 червня 2016 Share Опубліковано: 27 червня 2016 DotroxЭто не я назвал, вы путаете Мой вопрос был лишь как вы обходитесь без *mod, ответ был получен "Прямая правка" Но это лишь частный случай Надеюсь в погоне за "правильной" архитектурой не докатится до уровня WP, где на пустом сайте с 4 записями время генерации страниц 700-800мс Надіслати Поділитися на інших сайтах More sharing options... IgorS Опубліковано: 27 червня 2016 Автор Share Опубліковано: 27 червня 2016 Я перевел два магазина...Третий сейчас перевожу... Лучше, не сказал бы, что стало сильно лучше... Если программист, какой делал, не рукожоп, то и 1,5 работать будет долго... Спасибо! Понял. Надіслати Поділитися на інших сайтах More sharing options... IgorS Опубліковано: 27 червня 2016 Автор Share Опубліковано: 27 червня 2016 Здравствуйте! Ещё раз благодарю всех кто ответил! Надіслати Поділитися на інших сайтах More sharing options... Назад 1 2 Вперед Сторінка 2 з 2 Створіть аккаунт або увійдіть для коментування Ви повинні бути користувачем, щоб залишити коментар Створити обліковий запис Зареєструйтеся для отримання облікового запису. Це просто! Зареєструвати аккаунт Вхід Уже зареєстровані? Увійдіть тут. Вхід зараз Share More sharing options... Передплатники 0 Перейти до списку тем Зараз на сторінці 0 користувачів Ні користувачів, які переглядиють цю сторінку Последние темы Последние дополнения Последние новости Вся активність Головна Opencart 2.x Opencart 2.x: Загальні питання Есть ли смысл обновлять осистор с 1.5.4.1 до 2+ Покупцям Оплата розширень фізичними особами Оплата розширень юридичними особами Політика повернень Розробникам Регламент розміщення розширень Регламент продажу та підтримки розширень Віртуальний обліковий запис автора Політика просування оголошень API каталогу розширень Вирішення спорів щодо авторських прав Корисна інформація Публічна оферта Політика повернень Політика конфіденційності Платіжна політика Політика передачі особистих даних Політика прозорості Останні розширення SP Telegram повідомлення FREE Автор: spectre Відключити порожні категорії Автор: spectre SEO Автор тексту категорії / фільтра / блогу з датою оновлення контенту + мікророзмітка Автор: radaevich Промо банери в категоріях товарів Автор: IHOR1989 Trend - адаптивний універсальний шаблон Автор: DSV × Уже зареєстровані? Ввійти Реєстрація Ваші замовлення Назад Придбані модулі та шаблони Ваші рахунки Лист очікувань Альтернативні контакти Форум Новини ocStore Назад Офіційний сайт Демо ocStore 3.0.3.2 Демо ocStore 2.3.0.2.4 Завантажити ocStore Документація Історія версій ocStore Блоги Модулі Шаблони Назад Безкоштовні шаблони Платні шаблони Де купувати модулі? Послуги FAQ OpenCart.Pro Назад Демо Купити Порівняння × Створити... Important Information На нашому сайті використовуються файли cookie і відбувається обробка деяких персональних даних користувачів, щоб поліпшити користувальницький інтерфейс. Щоб дізнатися для чого і які персональні дані ми обробляємо перейдіть за посиланням . Якщо Ви натиснете «Я даю згоду», це означає, що Ви розумієте і приймаєте всі умови, зазначені в цьому Повідомленні про конфіденційність. Я даю згоду
Dotrox Опубліковано: 26 червня 2016 Share Опубліковано: 26 червня 2016 $query = (new Product())->findAll(); $query->addWhere(['category_id' => $id]); $results = $query->execute(); За это спасибо возьму на вооружение :-) Только в ОК это сейчас работать не будет :) Ну.. это почти тоже что я и показал просто я показал более развернутый класс. Да. Я просто показал принцип формирования запроса вообще без написания SQL кода. Так бы это выглядело, если б в ОК была нормальная ORM. Подобным образом это выглядит в Yii2. Надіслати Поділитися на інших сайтах More sharing options...
chukcha Опубліковано: 26 червня 2016 Share Опубліковано: 26 червня 2016 Ну.. здесь можно спорить до посинения Ведь $query->addWhere(['category_id' => $id]); Это уже есть часть sql.. $this->db->where("pd.language_id = '" . (int)$this->config->get('config_language_id') . "'");$this->db->where("p.status = '1'"); И без всяких Add - потому что укладывается в массив Надіслати Поділитися на інших сайтах More sharing options... Otvet Опубліковано: 26 червня 2016 Share Опубліковано: 26 червня 2016 (змінено) Вообще ушли в дебри Dotrox в данный момент, на OC 2.2 как без модификатора решите задачу "Не выводить товары с нулевым остатком" З.Ы. а мне нравится подход OC, проще и не ресурсозатратно Змінено 26 червня 2016 користувачем Otvet Надіслати Поділитися на інших сайтах More sharing options... chukcha Опубліковано: 26 червня 2016 Share Опубліковано: 26 червня 2016 В данный момент - никак При показанном мною подходе как видно, достаточно просто. Надіслати Поділитися на інших сайтах More sharing options... Dotrox Опубліковано: 26 червня 2016 Share Опубліковано: 26 червня 2016 Ведь $query->addWhere(['category_id' => $id]); Это уже есть часть sql.. Нет, это параметр, для запроса, но он может быть как угодно видоизменён (теоретически) перед добавлением непосредственно в sql. Собственно, при текущей структуре базы ОК в запросе не может быть просто category_id - это будет ptc.category_id (и это уже задача ORM зарезолвить все связи). Надіслати Поділитися на інших сайтах More sharing options... Dotrox Опубліковано: 26 червня 2016 Share Опубліковано: 26 червня 2016 (змінено) Dotrox в данный момент, на OC 2.2 как без модификатора решите задачу "Не выводить товары с нулевым остатком" А при чём тут данный момент? Я говорю, что вместо добавление в двойку модификатров из коробки, нужно было реализовать такую систему, ибо vQmod был просто вынужденным костылём из-за отсутствия нормальной архитектуры. А Дэниэль вместо создания нормальной архитектуры взял костыль и сделал аналог из коробки. Это, как если б в кабриолетах люди привязывали к спинке сидения зонт, чтоб от дождя защититься, а автопроизводители, посмотрев на это, вместо поднимающейся крыши сделали зонт впаянным в спинку прямо с конвеера. А вы бы ещё спросили: а как вы от дождя защититесь без этого впаянного зонта? :) Змінено 26 червня 2016 користувачем Dotrox Надіслати Поділитися на інших сайтах More sharing options... Otvet Опубліковано: 26 червня 2016 Share Опубліковано: 26 червня 2016 (змінено) То есть, если я никогда принципиально не использовал vQmod в данный момент, на OC 2.2 как без модификатора решите задачу "Не выводить товары с нулевым остатком" А при чём тут данный момент? Змінено 26 червня 2016 користувачем Otvet Надіслати Поділитися на інших сайтах More sharing options... Dotrox Опубліковано: 26 червня 2016 Share Опубліковано: 26 червня 2016 Otvet, и? Я не сказал, что я пишу модули при этом не используя vQmod! Я его в магазинах, которые делаю, не использовал никогда - вот о чём я говорил. А модули я вообще не пишу и именно из-за принципиального отказа от использования vQmod (а смысл делать очередной слайдер или модуль вывода товаров, где можно обойтись без vQmod - нет). У меня есть куча различных наработок, которыми я не могу поделиться именно из-за того, что все они затрагивают другие файлы, а это сейчас требует vQmod. Вот пример одной из таких наработок, которая могла бы быть бесплатным модулем: https://opencartforum.com/topic/62497-%D0%BE%D1%88%D0%B8%D0%B1%D0%BA%D0%B0-http-error-500/?do=findComment&comment=566165 И вы меняете тему! Как отсутствие сейчас в ОК возможности сделать что-то нормальное без модификаторов оправдывает то, что Дэниэль вместо создания нормальной системы расширения, просто интегрировал модификаторы? Надіслати Поділитися на інших сайтах More sharing options... Otvet Опубліковано: 26 червня 2016 Share Опубліковано: 26 червня 2016 Я его в магазинах, которые делаю, не использовал никогда - вот о чём я говорил. прямая правка кода? а пользователям тоже писать зайди туда измени то? И вы меняете тему! Как отсутствие сейчас в ОК возможности сделать что-то нормальное без модификаторов оправдывает то, что Дэниэль вместо создания нормальной системы расширения, просто интегрировал модификаторы? А каким боком то что OC не превратили в горе-фреймворк относится к данной теме? Вопрос стоит в выборе между 1.5 и 2 а не в том "Что могло бы быть" Надіслати Поділитися на інших сайтах More sharing options... Dotrox Опубліковано: 26 червня 2016 Share Опубліковано: 26 червня 2016 прямая правка кода? Да. а пользователям тоже писать зайди туда измени то? Читайте внимательно: Я не сказал, что я пишу модули при этом не используя vQmod! Я его в магазинах, которые делаю, не использовал никогда - вот о чём я говорил. А чтоб и vQmod не использовать и пользователей не просить вручную вносить правки, как раз и нужна нормальная архитектура. А каким боком то что OC не превратили в горе-фреймворк относится к данной теме? Вопрос стоит в выборе между 1.5 и 2 а не в том "Что могло бы быть" Нет, вопрос стоит в том, что вы назвали интеграцию костыля - преимуществом двойки перед 1.5. А на счёт "горе-фреймворка", то ОК как раз в него и превращается, там даже уже есть файл с соответствующим названием (/system/framework.php) :) А о фреймворках вообще: Мадженто изначально на Zend, ПрестаШоп начал переход на Symfony. Я не сторонник этих двух фреймворков (мне больше Yii нравится), но я не считаю, что велосипед с костылями лучше, чем современные паттерны и качественное профессиональное решение как база. В 1.5 на это всё ещё можно было закрыть глаза - наследие и всё такое, но 2.0 меня убила. Собственно, не понятно зачем эту версию вообще зарелизили, то есть, зачем релиз выпустили именно в тот момент - там местами тупо не хватает целых кусков кода. Например, в вишлисте метод для удаления товара из вишлиста пустой (на самом деле, он там лишний, ибо удаление идёт через параметр, который передаётся в метод index - очередной пример гавнокода в архитектуре ОК), а в методе добавления товара в вишлист не хватает записи в базу, всё пишется только в сессию (и это уже довольно ощутимый баг, ибо убивает смысл вишлиста). Запись вишлиста в базу появилась только в 2.1. Но намёки на новую архитектуру всё же есть, например, те же события, которые пока, правда, не особо используются. Надіслати Поділитися на інших сайтах More sharing options... Otvet Опубліковано: 27 червня 2016 Share Опубліковано: 27 червня 2016 DotroxЭто не я назвал, вы путаете Мой вопрос был лишь как вы обходитесь без *mod, ответ был получен "Прямая правка" Но это лишь частный случай Надеюсь в погоне за "правильной" архитектурой не докатится до уровня WP, где на пустом сайте с 4 записями время генерации страниц 700-800мс Надіслати Поділитися на інших сайтах More sharing options... IgorS Опубліковано: 27 червня 2016 Автор Share Опубліковано: 27 червня 2016 Я перевел два магазина...Третий сейчас перевожу... Лучше, не сказал бы, что стало сильно лучше... Если программист, какой делал, не рукожоп, то и 1,5 работать будет долго... Спасибо! Понял. Надіслати Поділитися на інших сайтах More sharing options... IgorS Опубліковано: 27 червня 2016 Автор Share Опубліковано: 27 червня 2016 Здравствуйте! Ещё раз благодарю всех кто ответил! Надіслати Поділитися на інших сайтах More sharing options... Назад 1 2 Вперед Сторінка 2 з 2 Створіть аккаунт або увійдіть для коментування Ви повинні бути користувачем, щоб залишити коментар Створити обліковий запис Зареєструйтеся для отримання облікового запису. Це просто! Зареєструвати аккаунт Вхід Уже зареєстровані? Увійдіть тут. Вхід зараз Share More sharing options... Передплатники 0 Перейти до списку тем Зараз на сторінці 0 користувачів Ні користувачів, які переглядиють цю сторінку Последние темы Последние дополнения Последние новости Вся активність Головна Opencart 2.x Opencart 2.x: Загальні питання Есть ли смысл обновлять осистор с 1.5.4.1 до 2+ Покупцям Оплата розширень фізичними особами Оплата розширень юридичними особами Політика повернень Розробникам Регламент розміщення розширень Регламент продажу та підтримки розширень Віртуальний обліковий запис автора Політика просування оголошень API каталогу розширень Вирішення спорів щодо авторських прав Корисна інформація Публічна оферта Політика повернень Політика конфіденційності Платіжна політика Політика передачі особистих даних Політика прозорості Останні розширення SP Telegram повідомлення FREE Автор: spectre Відключити порожні категорії Автор: spectre SEO Автор тексту категорії / фільтра / блогу з датою оновлення контенту + мікророзмітка Автор: radaevich Промо банери в категоріях товарів Автор: IHOR1989 Trend - адаптивний універсальний шаблон Автор: DSV × Уже зареєстровані? Ввійти Реєстрація Ваші замовлення Назад Придбані модулі та шаблони Ваші рахунки Лист очікувань Альтернативні контакти Форум Новини ocStore Назад Офіційний сайт Демо ocStore 3.0.3.2 Демо ocStore 2.3.0.2.4 Завантажити ocStore Документація Історія версій ocStore Блоги Модулі Шаблони Назад Безкоштовні шаблони Платні шаблони Де купувати модулі? Послуги FAQ OpenCart.Pro Назад Демо Купити Порівняння × Створити... Important Information На нашому сайті використовуються файли cookie і відбувається обробка деяких персональних даних користувачів, щоб поліпшити користувальницький інтерфейс. Щоб дізнатися для чого і які персональні дані ми обробляємо перейдіть за посиланням . Якщо Ви натиснете «Я даю згоду», це означає, що Ви розумієте і приймаєте всі умови, зазначені в цьому Повідомленні про конфіденційність. Я даю згоду
Otvet Опубліковано: 26 червня 2016 Share Опубліковано: 26 червня 2016 (змінено) Вообще ушли в дебри Dotrox в данный момент, на OC 2.2 как без модификатора решите задачу "Не выводить товары с нулевым остатком" З.Ы. а мне нравится подход OC, проще и не ресурсозатратно Змінено 26 червня 2016 користувачем Otvet Надіслати Поділитися на інших сайтах More sharing options... chukcha Опубліковано: 26 червня 2016 Share Опубліковано: 26 червня 2016 В данный момент - никак При показанном мною подходе как видно, достаточно просто. Надіслати Поділитися на інших сайтах More sharing options... Dotrox Опубліковано: 26 червня 2016 Share Опубліковано: 26 червня 2016 Ведь $query->addWhere(['category_id' => $id]); Это уже есть часть sql.. Нет, это параметр, для запроса, но он может быть как угодно видоизменён (теоретически) перед добавлением непосредственно в sql. Собственно, при текущей структуре базы ОК в запросе не может быть просто category_id - это будет ptc.category_id (и это уже задача ORM зарезолвить все связи). Надіслати Поділитися на інших сайтах More sharing options... Dotrox Опубліковано: 26 червня 2016 Share Опубліковано: 26 червня 2016 (змінено) Dotrox в данный момент, на OC 2.2 как без модификатора решите задачу "Не выводить товары с нулевым остатком" А при чём тут данный момент? Я говорю, что вместо добавление в двойку модификатров из коробки, нужно было реализовать такую систему, ибо vQmod был просто вынужденным костылём из-за отсутствия нормальной архитектуры. А Дэниэль вместо создания нормальной архитектуры взял костыль и сделал аналог из коробки. Это, как если б в кабриолетах люди привязывали к спинке сидения зонт, чтоб от дождя защититься, а автопроизводители, посмотрев на это, вместо поднимающейся крыши сделали зонт впаянным в спинку прямо с конвеера. А вы бы ещё спросили: а как вы от дождя защититесь без этого впаянного зонта? :) Змінено 26 червня 2016 користувачем Dotrox Надіслати Поділитися на інших сайтах More sharing options... Otvet Опубліковано: 26 червня 2016 Share Опубліковано: 26 червня 2016 (змінено) То есть, если я никогда принципиально не использовал vQmod в данный момент, на OC 2.2 как без модификатора решите задачу "Не выводить товары с нулевым остатком" А при чём тут данный момент? Змінено 26 червня 2016 користувачем Otvet Надіслати Поділитися на інших сайтах More sharing options... Dotrox Опубліковано: 26 червня 2016 Share Опубліковано: 26 червня 2016 Otvet, и? Я не сказал, что я пишу модули при этом не используя vQmod! Я его в магазинах, которые делаю, не использовал никогда - вот о чём я говорил. А модули я вообще не пишу и именно из-за принципиального отказа от использования vQmod (а смысл делать очередной слайдер или модуль вывода товаров, где можно обойтись без vQmod - нет). У меня есть куча различных наработок, которыми я не могу поделиться именно из-за того, что все они затрагивают другие файлы, а это сейчас требует vQmod. Вот пример одной из таких наработок, которая могла бы быть бесплатным модулем: https://opencartforum.com/topic/62497-%D0%BE%D1%88%D0%B8%D0%B1%D0%BA%D0%B0-http-error-500/?do=findComment&comment=566165 И вы меняете тему! Как отсутствие сейчас в ОК возможности сделать что-то нормальное без модификаторов оправдывает то, что Дэниэль вместо создания нормальной системы расширения, просто интегрировал модификаторы? Надіслати Поділитися на інших сайтах More sharing options... Otvet Опубліковано: 26 червня 2016 Share Опубліковано: 26 червня 2016 Я его в магазинах, которые делаю, не использовал никогда - вот о чём я говорил. прямая правка кода? а пользователям тоже писать зайди туда измени то? И вы меняете тему! Как отсутствие сейчас в ОК возможности сделать что-то нормальное без модификаторов оправдывает то, что Дэниэль вместо создания нормальной системы расширения, просто интегрировал модификаторы? А каким боком то что OC не превратили в горе-фреймворк относится к данной теме? Вопрос стоит в выборе между 1.5 и 2 а не в том "Что могло бы быть" Надіслати Поділитися на інших сайтах More sharing options... Dotrox Опубліковано: 26 червня 2016 Share Опубліковано: 26 червня 2016 прямая правка кода? Да. а пользователям тоже писать зайди туда измени то? Читайте внимательно: Я не сказал, что я пишу модули при этом не используя vQmod! Я его в магазинах, которые делаю, не использовал никогда - вот о чём я говорил. А чтоб и vQmod не использовать и пользователей не просить вручную вносить правки, как раз и нужна нормальная архитектура. А каким боком то что OC не превратили в горе-фреймворк относится к данной теме? Вопрос стоит в выборе между 1.5 и 2 а не в том "Что могло бы быть" Нет, вопрос стоит в том, что вы назвали интеграцию костыля - преимуществом двойки перед 1.5. А на счёт "горе-фреймворка", то ОК как раз в него и превращается, там даже уже есть файл с соответствующим названием (/system/framework.php) :) А о фреймворках вообще: Мадженто изначально на Zend, ПрестаШоп начал переход на Symfony. Я не сторонник этих двух фреймворков (мне больше Yii нравится), но я не считаю, что велосипед с костылями лучше, чем современные паттерны и качественное профессиональное решение как база. В 1.5 на это всё ещё можно было закрыть глаза - наследие и всё такое, но 2.0 меня убила. Собственно, не понятно зачем эту версию вообще зарелизили, то есть, зачем релиз выпустили именно в тот момент - там местами тупо не хватает целых кусков кода. Например, в вишлисте метод для удаления товара из вишлиста пустой (на самом деле, он там лишний, ибо удаление идёт через параметр, который передаётся в метод index - очередной пример гавнокода в архитектуре ОК), а в методе добавления товара в вишлист не хватает записи в базу, всё пишется только в сессию (и это уже довольно ощутимый баг, ибо убивает смысл вишлиста). Запись вишлиста в базу появилась только в 2.1. Но намёки на новую архитектуру всё же есть, например, те же события, которые пока, правда, не особо используются. Надіслати Поділитися на інших сайтах More sharing options... Otvet Опубліковано: 27 червня 2016 Share Опубліковано: 27 червня 2016 DotroxЭто не я назвал, вы путаете Мой вопрос был лишь как вы обходитесь без *mod, ответ был получен "Прямая правка" Но это лишь частный случай Надеюсь в погоне за "правильной" архитектурой не докатится до уровня WP, где на пустом сайте с 4 записями время генерации страниц 700-800мс Надіслати Поділитися на інших сайтах More sharing options... IgorS Опубліковано: 27 червня 2016 Автор Share Опубліковано: 27 червня 2016 Я перевел два магазина...Третий сейчас перевожу... Лучше, не сказал бы, что стало сильно лучше... Если программист, какой делал, не рукожоп, то и 1,5 работать будет долго... Спасибо! Понял. Надіслати Поділитися на інших сайтах More sharing options... IgorS Опубліковано: 27 червня 2016 Автор Share Опубліковано: 27 червня 2016 Здравствуйте! Ещё раз благодарю всех кто ответил! Надіслати Поділитися на інших сайтах More sharing options... Назад 1 2 Вперед Сторінка 2 з 2 Створіть аккаунт або увійдіть для коментування Ви повинні бути користувачем, щоб залишити коментар Створити обліковий запис Зареєструйтеся для отримання облікового запису. Це просто! Зареєструвати аккаунт Вхід Уже зареєстровані? Увійдіть тут. Вхід зараз Share More sharing options... Передплатники 0 Перейти до списку тем Зараз на сторінці 0 користувачів Ні користувачів, які переглядиють цю сторінку Последние темы Последние дополнения Последние новости Вся активність Головна Opencart 2.x Opencart 2.x: Загальні питання Есть ли смысл обновлять осистор с 1.5.4.1 до 2+ Покупцям Оплата розширень фізичними особами Оплата розширень юридичними особами Політика повернень Розробникам Регламент розміщення розширень Регламент продажу та підтримки розширень Віртуальний обліковий запис автора Політика просування оголошень API каталогу розширень Вирішення спорів щодо авторських прав Корисна інформація Публічна оферта Політика повернень Політика конфіденційності Платіжна політика Політика передачі особистих даних Політика прозорості Останні розширення SP Telegram повідомлення FREE Автор: spectre Відключити порожні категорії Автор: spectre SEO Автор тексту категорії / фільтра / блогу з датою оновлення контенту + мікророзмітка Автор: radaevich Промо банери в категоріях товарів Автор: IHOR1989 Trend - адаптивний універсальний шаблон Автор: DSV × Уже зареєстровані? Ввійти Реєстрація Ваші замовлення Назад Придбані модулі та шаблони Ваші рахунки Лист очікувань Альтернативні контакти Форум Новини ocStore Назад Офіційний сайт Демо ocStore 3.0.3.2 Демо ocStore 2.3.0.2.4 Завантажити ocStore Документація Історія версій ocStore Блоги Модулі Шаблони Назад Безкоштовні шаблони Платні шаблони Де купувати модулі? Послуги FAQ OpenCart.Pro Назад Демо Купити Порівняння × Створити... Important Information На нашому сайті використовуються файли cookie і відбувається обробка деяких персональних даних користувачів, щоб поліпшити користувальницький інтерфейс. Щоб дізнатися для чого і які персональні дані ми обробляємо перейдіть за посиланням . Якщо Ви натиснете «Я даю згоду», це означає, що Ви розумієте і приймаєте всі умови, зазначені в цьому Повідомленні про конфіденційність. Я даю згоду
chukcha Опубліковано: 26 червня 2016 Share Опубліковано: 26 червня 2016 В данный момент - никак При показанном мною подходе как видно, достаточно просто. Надіслати Поділитися на інших сайтах More sharing options... Dotrox Опубліковано: 26 червня 2016 Share Опубліковано: 26 червня 2016 Ведь $query->addWhere(['category_id' => $id]); Это уже есть часть sql.. Нет, это параметр, для запроса, но он может быть как угодно видоизменён (теоретически) перед добавлением непосредственно в sql. Собственно, при текущей структуре базы ОК в запросе не может быть просто category_id - это будет ptc.category_id (и это уже задача ORM зарезолвить все связи). Надіслати Поділитися на інших сайтах More sharing options... Dotrox Опубліковано: 26 червня 2016 Share Опубліковано: 26 червня 2016 (змінено) Dotrox в данный момент, на OC 2.2 как без модификатора решите задачу "Не выводить товары с нулевым остатком" А при чём тут данный момент? Я говорю, что вместо добавление в двойку модификатров из коробки, нужно было реализовать такую систему, ибо vQmod был просто вынужденным костылём из-за отсутствия нормальной архитектуры. А Дэниэль вместо создания нормальной архитектуры взял костыль и сделал аналог из коробки. Это, как если б в кабриолетах люди привязывали к спинке сидения зонт, чтоб от дождя защититься, а автопроизводители, посмотрев на это, вместо поднимающейся крыши сделали зонт впаянным в спинку прямо с конвеера. А вы бы ещё спросили: а как вы от дождя защититесь без этого впаянного зонта? :) Змінено 26 червня 2016 користувачем Dotrox Надіслати Поділитися на інших сайтах More sharing options... Otvet Опубліковано: 26 червня 2016 Share Опубліковано: 26 червня 2016 (змінено) То есть, если я никогда принципиально не использовал vQmod в данный момент, на OC 2.2 как без модификатора решите задачу "Не выводить товары с нулевым остатком" А при чём тут данный момент? Змінено 26 червня 2016 користувачем Otvet Надіслати Поділитися на інших сайтах More sharing options... Dotrox Опубліковано: 26 червня 2016 Share Опубліковано: 26 червня 2016 Otvet, и? Я не сказал, что я пишу модули при этом не используя vQmod! Я его в магазинах, которые делаю, не использовал никогда - вот о чём я говорил. А модули я вообще не пишу и именно из-за принципиального отказа от использования vQmod (а смысл делать очередной слайдер или модуль вывода товаров, где можно обойтись без vQmod - нет). У меня есть куча различных наработок, которыми я не могу поделиться именно из-за того, что все они затрагивают другие файлы, а это сейчас требует vQmod. Вот пример одной из таких наработок, которая могла бы быть бесплатным модулем: https://opencartforum.com/topic/62497-%D0%BE%D1%88%D0%B8%D0%B1%D0%BA%D0%B0-http-error-500/?do=findComment&comment=566165 И вы меняете тему! Как отсутствие сейчас в ОК возможности сделать что-то нормальное без модификаторов оправдывает то, что Дэниэль вместо создания нормальной системы расширения, просто интегрировал модификаторы? Надіслати Поділитися на інших сайтах More sharing options... Otvet Опубліковано: 26 червня 2016 Share Опубліковано: 26 червня 2016 Я его в магазинах, которые делаю, не использовал никогда - вот о чём я говорил. прямая правка кода? а пользователям тоже писать зайди туда измени то? И вы меняете тему! Как отсутствие сейчас в ОК возможности сделать что-то нормальное без модификаторов оправдывает то, что Дэниэль вместо создания нормальной системы расширения, просто интегрировал модификаторы? А каким боком то что OC не превратили в горе-фреймворк относится к данной теме? Вопрос стоит в выборе между 1.5 и 2 а не в том "Что могло бы быть" Надіслати Поділитися на інших сайтах More sharing options... Dotrox Опубліковано: 26 червня 2016 Share Опубліковано: 26 червня 2016 прямая правка кода? Да. а пользователям тоже писать зайди туда измени то? Читайте внимательно: Я не сказал, что я пишу модули при этом не используя vQmod! Я его в магазинах, которые делаю, не использовал никогда - вот о чём я говорил. А чтоб и vQmod не использовать и пользователей не просить вручную вносить правки, как раз и нужна нормальная архитектура. А каким боком то что OC не превратили в горе-фреймворк относится к данной теме? Вопрос стоит в выборе между 1.5 и 2 а не в том "Что могло бы быть" Нет, вопрос стоит в том, что вы назвали интеграцию костыля - преимуществом двойки перед 1.5. А на счёт "горе-фреймворка", то ОК как раз в него и превращается, там даже уже есть файл с соответствующим названием (/system/framework.php) :) А о фреймворках вообще: Мадженто изначально на Zend, ПрестаШоп начал переход на Symfony. Я не сторонник этих двух фреймворков (мне больше Yii нравится), но я не считаю, что велосипед с костылями лучше, чем современные паттерны и качественное профессиональное решение как база. В 1.5 на это всё ещё можно было закрыть глаза - наследие и всё такое, но 2.0 меня убила. Собственно, не понятно зачем эту версию вообще зарелизили, то есть, зачем релиз выпустили именно в тот момент - там местами тупо не хватает целых кусков кода. Например, в вишлисте метод для удаления товара из вишлиста пустой (на самом деле, он там лишний, ибо удаление идёт через параметр, который передаётся в метод index - очередной пример гавнокода в архитектуре ОК), а в методе добавления товара в вишлист не хватает записи в базу, всё пишется только в сессию (и это уже довольно ощутимый баг, ибо убивает смысл вишлиста). Запись вишлиста в базу появилась только в 2.1. Но намёки на новую архитектуру всё же есть, например, те же события, которые пока, правда, не особо используются. Надіслати Поділитися на інших сайтах More sharing options... Otvet Опубліковано: 27 червня 2016 Share Опубліковано: 27 червня 2016 DotroxЭто не я назвал, вы путаете Мой вопрос был лишь как вы обходитесь без *mod, ответ был получен "Прямая правка" Но это лишь частный случай Надеюсь в погоне за "правильной" архитектурой не докатится до уровня WP, где на пустом сайте с 4 записями время генерации страниц 700-800мс Надіслати Поділитися на інших сайтах More sharing options... IgorS Опубліковано: 27 червня 2016 Автор Share Опубліковано: 27 червня 2016 Я перевел два магазина...Третий сейчас перевожу... Лучше, не сказал бы, что стало сильно лучше... Если программист, какой делал, не рукожоп, то и 1,5 работать будет долго... Спасибо! Понял. Надіслати Поділитися на інших сайтах More sharing options... IgorS Опубліковано: 27 червня 2016 Автор Share Опубліковано: 27 червня 2016 Здравствуйте! Ещё раз благодарю всех кто ответил! Надіслати Поділитися на інших сайтах More sharing options... Назад 1 2 Вперед Сторінка 2 з 2 Створіть аккаунт або увійдіть для коментування Ви повинні бути користувачем, щоб залишити коментар Створити обліковий запис Зареєструйтеся для отримання облікового запису. Це просто! Зареєструвати аккаунт Вхід Уже зареєстровані? Увійдіть тут. Вхід зараз Share More sharing options... Передплатники 0 Перейти до списку тем Зараз на сторінці 0 користувачів Ні користувачів, які переглядиють цю сторінку Последние темы Последние дополнения Последние новости Вся активність Головна Opencart 2.x Opencart 2.x: Загальні питання Есть ли смысл обновлять осистор с 1.5.4.1 до 2+ Покупцям Оплата розширень фізичними особами Оплата розширень юридичними особами Політика повернень Розробникам Регламент розміщення розширень Регламент продажу та підтримки розширень Віртуальний обліковий запис автора Політика просування оголошень API каталогу розширень Вирішення спорів щодо авторських прав Корисна інформація Публічна оферта Політика повернень Політика конфіденційності Платіжна політика Політика передачі особистих даних Політика прозорості Останні розширення SP Telegram повідомлення FREE Автор: spectre Відключити порожні категорії Автор: spectre SEO Автор тексту категорії / фільтра / блогу з датою оновлення контенту + мікророзмітка Автор: radaevich Промо банери в категоріях товарів Автор: IHOR1989 Trend - адаптивний універсальний шаблон Автор: DSV
Dotrox Опубліковано: 26 червня 2016 Share Опубліковано: 26 червня 2016 Ведь $query->addWhere(['category_id' => $id]); Это уже есть часть sql.. Нет, это параметр, для запроса, но он может быть как угодно видоизменён (теоретически) перед добавлением непосредственно в sql. Собственно, при текущей структуре базы ОК в запросе не может быть просто category_id - это будет ptc.category_id (и это уже задача ORM зарезолвить все связи). Надіслати Поділитися на інших сайтах More sharing options...
Dotrox Опубліковано: 26 червня 2016 Share Опубліковано: 26 червня 2016 (змінено) Dotrox в данный момент, на OC 2.2 как без модификатора решите задачу "Не выводить товары с нулевым остатком" А при чём тут данный момент? Я говорю, что вместо добавление в двойку модификатров из коробки, нужно было реализовать такую систему, ибо vQmod был просто вынужденным костылём из-за отсутствия нормальной архитектуры. А Дэниэль вместо создания нормальной архитектуры взял костыль и сделал аналог из коробки. Это, как если б в кабриолетах люди привязывали к спинке сидения зонт, чтоб от дождя защититься, а автопроизводители, посмотрев на это, вместо поднимающейся крыши сделали зонт впаянным в спинку прямо с конвеера. А вы бы ещё спросили: а как вы от дождя защититесь без этого впаянного зонта? :) Змінено 26 червня 2016 користувачем Dotrox Надіслати Поділитися на інших сайтах More sharing options...
Otvet Опубліковано: 26 червня 2016 Share Опубліковано: 26 червня 2016 (змінено) То есть, если я никогда принципиально не использовал vQmod в данный момент, на OC 2.2 как без модификатора решите задачу "Не выводить товары с нулевым остатком" А при чём тут данный момент? Змінено 26 червня 2016 користувачем Otvet Надіслати Поділитися на інших сайтах More sharing options... Dotrox Опубліковано: 26 червня 2016 Share Опубліковано: 26 червня 2016 Otvet, и? Я не сказал, что я пишу модули при этом не используя vQmod! Я его в магазинах, которые делаю, не использовал никогда - вот о чём я говорил. А модули я вообще не пишу и именно из-за принципиального отказа от использования vQmod (а смысл делать очередной слайдер или модуль вывода товаров, где можно обойтись без vQmod - нет). У меня есть куча различных наработок, которыми я не могу поделиться именно из-за того, что все они затрагивают другие файлы, а это сейчас требует vQmod. Вот пример одной из таких наработок, которая могла бы быть бесплатным модулем: https://opencartforum.com/topic/62497-%D0%BE%D1%88%D0%B8%D0%B1%D0%BA%D0%B0-http-error-500/?do=findComment&comment=566165 И вы меняете тему! Как отсутствие сейчас в ОК возможности сделать что-то нормальное без модификаторов оправдывает то, что Дэниэль вместо создания нормальной системы расширения, просто интегрировал модификаторы? Надіслати Поділитися на інших сайтах More sharing options... Otvet Опубліковано: 26 червня 2016 Share Опубліковано: 26 червня 2016 Я его в магазинах, которые делаю, не использовал никогда - вот о чём я говорил. прямая правка кода? а пользователям тоже писать зайди туда измени то? И вы меняете тему! Как отсутствие сейчас в ОК возможности сделать что-то нормальное без модификаторов оправдывает то, что Дэниэль вместо создания нормальной системы расширения, просто интегрировал модификаторы? А каким боком то что OC не превратили в горе-фреймворк относится к данной теме? Вопрос стоит в выборе между 1.5 и 2 а не в том "Что могло бы быть" Надіслати Поділитися на інших сайтах More sharing options... Dotrox Опубліковано: 26 червня 2016 Share Опубліковано: 26 червня 2016 прямая правка кода? Да. а пользователям тоже писать зайди туда измени то? Читайте внимательно: Я не сказал, что я пишу модули при этом не используя vQmod! Я его в магазинах, которые делаю, не использовал никогда - вот о чём я говорил. А чтоб и vQmod не использовать и пользователей не просить вручную вносить правки, как раз и нужна нормальная архитектура. А каким боком то что OC не превратили в горе-фреймворк относится к данной теме? Вопрос стоит в выборе между 1.5 и 2 а не в том "Что могло бы быть" Нет, вопрос стоит в том, что вы назвали интеграцию костыля - преимуществом двойки перед 1.5. А на счёт "горе-фреймворка", то ОК как раз в него и превращается, там даже уже есть файл с соответствующим названием (/system/framework.php) :) А о фреймворках вообще: Мадженто изначально на Zend, ПрестаШоп начал переход на Symfony. Я не сторонник этих двух фреймворков (мне больше Yii нравится), но я не считаю, что велосипед с костылями лучше, чем современные паттерны и качественное профессиональное решение как база. В 1.5 на это всё ещё можно было закрыть глаза - наследие и всё такое, но 2.0 меня убила. Собственно, не понятно зачем эту версию вообще зарелизили, то есть, зачем релиз выпустили именно в тот момент - там местами тупо не хватает целых кусков кода. Например, в вишлисте метод для удаления товара из вишлиста пустой (на самом деле, он там лишний, ибо удаление идёт через параметр, который передаётся в метод index - очередной пример гавнокода в архитектуре ОК), а в методе добавления товара в вишлист не хватает записи в базу, всё пишется только в сессию (и это уже довольно ощутимый баг, ибо убивает смысл вишлиста). Запись вишлиста в базу появилась только в 2.1. Но намёки на новую архитектуру всё же есть, например, те же события, которые пока, правда, не особо используются. Надіслати Поділитися на інших сайтах More sharing options... Otvet Опубліковано: 27 червня 2016 Share Опубліковано: 27 червня 2016 DotroxЭто не я назвал, вы путаете Мой вопрос был лишь как вы обходитесь без *mod, ответ был получен "Прямая правка" Но это лишь частный случай Надеюсь в погоне за "правильной" архитектурой не докатится до уровня WP, где на пустом сайте с 4 записями время генерации страниц 700-800мс Надіслати Поділитися на інших сайтах More sharing options... IgorS Опубліковано: 27 червня 2016 Автор Share Опубліковано: 27 червня 2016 Я перевел два магазина...Третий сейчас перевожу... Лучше, не сказал бы, что стало сильно лучше... Если программист, какой делал, не рукожоп, то и 1,5 работать будет долго... Спасибо! Понял. Надіслати Поділитися на інших сайтах More sharing options... IgorS Опубліковано: 27 червня 2016 Автор Share Опубліковано: 27 червня 2016 Здравствуйте! Ещё раз благодарю всех кто ответил! Надіслати Поділитися на інших сайтах More sharing options... Назад 1 2 Вперед Сторінка 2 з 2 Створіть аккаунт або увійдіть для коментування Ви повинні бути користувачем, щоб залишити коментар Створити обліковий запис Зареєструйтеся для отримання облікового запису. Це просто! Зареєструвати аккаунт Вхід Уже зареєстровані? Увійдіть тут. Вхід зараз Share More sharing options... Передплатники 0 Перейти до списку тем Зараз на сторінці 0 користувачів Ні користувачів, які переглядиють цю сторінку Последние темы Последние дополнения Последние новости Вся активність Головна Opencart 2.x Opencart 2.x: Загальні питання Есть ли смысл обновлять осистор с 1.5.4.1 до 2+
Dotrox Опубліковано: 26 червня 2016 Share Опубліковано: 26 червня 2016 Otvet, и? Я не сказал, что я пишу модули при этом не используя vQmod! Я его в магазинах, которые делаю, не использовал никогда - вот о чём я говорил. А модули я вообще не пишу и именно из-за принципиального отказа от использования vQmod (а смысл делать очередной слайдер или модуль вывода товаров, где можно обойтись без vQmod - нет). У меня есть куча различных наработок, которыми я не могу поделиться именно из-за того, что все они затрагивают другие файлы, а это сейчас требует vQmod. Вот пример одной из таких наработок, которая могла бы быть бесплатным модулем: https://opencartforum.com/topic/62497-%D0%BE%D1%88%D0%B8%D0%B1%D0%BA%D0%B0-http-error-500/?do=findComment&comment=566165 И вы меняете тему! Как отсутствие сейчас в ОК возможности сделать что-то нормальное без модификаторов оправдывает то, что Дэниэль вместо создания нормальной системы расширения, просто интегрировал модификаторы? Надіслати Поділитися на інших сайтах More sharing options...
Otvet Опубліковано: 26 червня 2016 Share Опубліковано: 26 червня 2016 Я его в магазинах, которые делаю, не использовал никогда - вот о чём я говорил. прямая правка кода? а пользователям тоже писать зайди туда измени то? И вы меняете тему! Как отсутствие сейчас в ОК возможности сделать что-то нормальное без модификаторов оправдывает то, что Дэниэль вместо создания нормальной системы расширения, просто интегрировал модификаторы? А каким боком то что OC не превратили в горе-фреймворк относится к данной теме? Вопрос стоит в выборе между 1.5 и 2 а не в том "Что могло бы быть" Надіслати Поділитися на інших сайтах More sharing options... Dotrox Опубліковано: 26 червня 2016 Share Опубліковано: 26 червня 2016 прямая правка кода? Да. а пользователям тоже писать зайди туда измени то? Читайте внимательно: Я не сказал, что я пишу модули при этом не используя vQmod! Я его в магазинах, которые делаю, не использовал никогда - вот о чём я говорил. А чтоб и vQmod не использовать и пользователей не просить вручную вносить правки, как раз и нужна нормальная архитектура. А каким боком то что OC не превратили в горе-фреймворк относится к данной теме? Вопрос стоит в выборе между 1.5 и 2 а не в том "Что могло бы быть" Нет, вопрос стоит в том, что вы назвали интеграцию костыля - преимуществом двойки перед 1.5. А на счёт "горе-фреймворка", то ОК как раз в него и превращается, там даже уже есть файл с соответствующим названием (/system/framework.php) :) А о фреймворках вообще: Мадженто изначально на Zend, ПрестаШоп начал переход на Symfony. Я не сторонник этих двух фреймворков (мне больше Yii нравится), но я не считаю, что велосипед с костылями лучше, чем современные паттерны и качественное профессиональное решение как база. В 1.5 на это всё ещё можно было закрыть глаза - наследие и всё такое, но 2.0 меня убила. Собственно, не понятно зачем эту версию вообще зарелизили, то есть, зачем релиз выпустили именно в тот момент - там местами тупо не хватает целых кусков кода. Например, в вишлисте метод для удаления товара из вишлиста пустой (на самом деле, он там лишний, ибо удаление идёт через параметр, который передаётся в метод index - очередной пример гавнокода в архитектуре ОК), а в методе добавления товара в вишлист не хватает записи в базу, всё пишется только в сессию (и это уже довольно ощутимый баг, ибо убивает смысл вишлиста). Запись вишлиста в базу появилась только в 2.1. Но намёки на новую архитектуру всё же есть, например, те же события, которые пока, правда, не особо используются. Надіслати Поділитися на інших сайтах More sharing options... Otvet Опубліковано: 27 червня 2016 Share Опубліковано: 27 червня 2016 DotroxЭто не я назвал, вы путаете Мой вопрос был лишь как вы обходитесь без *mod, ответ был получен "Прямая правка" Но это лишь частный случай Надеюсь в погоне за "правильной" архитектурой не докатится до уровня WP, где на пустом сайте с 4 записями время генерации страниц 700-800мс Надіслати Поділитися на інших сайтах More sharing options... IgorS Опубліковано: 27 червня 2016 Автор Share Опубліковано: 27 червня 2016 Я перевел два магазина...Третий сейчас перевожу... Лучше, не сказал бы, что стало сильно лучше... Если программист, какой делал, не рукожоп, то и 1,5 работать будет долго... Спасибо! Понял. Надіслати Поділитися на інших сайтах More sharing options... IgorS Опубліковано: 27 червня 2016 Автор Share Опубліковано: 27 червня 2016 Здравствуйте! Ещё раз благодарю всех кто ответил! Надіслати Поділитися на інших сайтах More sharing options... Назад 1 2 Вперед Сторінка 2 з 2 Створіть аккаунт або увійдіть для коментування Ви повинні бути користувачем, щоб залишити коментар Створити обліковий запис Зареєструйтеся для отримання облікового запису. Це просто! Зареєструвати аккаунт Вхід Уже зареєстровані? Увійдіть тут. Вхід зараз Share More sharing options... Передплатники 0 Перейти до списку тем Зараз на сторінці 0 користувачів Ні користувачів, які переглядиють цю сторінку
Dotrox Опубліковано: 26 червня 2016 Share Опубліковано: 26 червня 2016 прямая правка кода? Да. а пользователям тоже писать зайди туда измени то? Читайте внимательно: Я не сказал, что я пишу модули при этом не используя vQmod! Я его в магазинах, которые делаю, не использовал никогда - вот о чём я говорил. А чтоб и vQmod не использовать и пользователей не просить вручную вносить правки, как раз и нужна нормальная архитектура. А каким боком то что OC не превратили в горе-фреймворк относится к данной теме? Вопрос стоит в выборе между 1.5 и 2 а не в том "Что могло бы быть" Нет, вопрос стоит в том, что вы назвали интеграцию костыля - преимуществом двойки перед 1.5. А на счёт "горе-фреймворка", то ОК как раз в него и превращается, там даже уже есть файл с соответствующим названием (/system/framework.php) :) А о фреймворках вообще: Мадженто изначально на Zend, ПрестаШоп начал переход на Symfony. Я не сторонник этих двух фреймворков (мне больше Yii нравится), но я не считаю, что велосипед с костылями лучше, чем современные паттерны и качественное профессиональное решение как база. В 1.5 на это всё ещё можно было закрыть глаза - наследие и всё такое, но 2.0 меня убила. Собственно, не понятно зачем эту версию вообще зарелизили, то есть, зачем релиз выпустили именно в тот момент - там местами тупо не хватает целых кусков кода. Например, в вишлисте метод для удаления товара из вишлиста пустой (на самом деле, он там лишний, ибо удаление идёт через параметр, который передаётся в метод index - очередной пример гавнокода в архитектуре ОК), а в методе добавления товара в вишлист не хватает записи в базу, всё пишется только в сессию (и это уже довольно ощутимый баг, ибо убивает смысл вишлиста). Запись вишлиста в базу появилась только в 2.1. Но намёки на новую архитектуру всё же есть, например, те же события, которые пока, правда, не особо используются. Надіслати Поділитися на інших сайтах More sharing options...
Otvet Опубліковано: 27 червня 2016 Share Опубліковано: 27 червня 2016 DotroxЭто не я назвал, вы путаете Мой вопрос был лишь как вы обходитесь без *mod, ответ был получен "Прямая правка" Но это лишь частный случай Надеюсь в погоне за "правильной" архитектурой не докатится до уровня WP, где на пустом сайте с 4 записями время генерации страниц 700-800мс Надіслати Поділитися на інших сайтах More sharing options... IgorS Опубліковано: 27 червня 2016 Автор Share Опубліковано: 27 червня 2016 Я перевел два магазина...Третий сейчас перевожу... Лучше, не сказал бы, что стало сильно лучше... Если программист, какой делал, не рукожоп, то и 1,5 работать будет долго... Спасибо! Понял. Надіслати Поділитися на інших сайтах More sharing options... IgorS Опубліковано: 27 червня 2016 Автор Share Опубліковано: 27 червня 2016 Здравствуйте! Ещё раз благодарю всех кто ответил! Надіслати Поділитися на інших сайтах More sharing options... Назад 1 2 Вперед Сторінка 2 з 2 Створіть аккаунт або увійдіть для коментування Ви повинні бути користувачем, щоб залишити коментар Створити обліковий запис Зареєструйтеся для отримання облікового запису. Це просто! Зареєструвати аккаунт Вхід Уже зареєстровані? Увійдіть тут. Вхід зараз Share More sharing options... Передплатники 0
IgorS Опубліковано: 27 червня 2016 Автор Share Опубліковано: 27 червня 2016 Я перевел два магазина...Третий сейчас перевожу... Лучше, не сказал бы, что стало сильно лучше... Если программист, какой делал, не рукожоп, то и 1,5 работать будет долго... Спасибо! Понял. Надіслати Поділитися на інших сайтах More sharing options...
IgorS Опубліковано: 27 червня 2016 Автор Share Опубліковано: 27 червня 2016 Здравствуйте! Ещё раз благодарю всех кто ответил! Надіслати Поділитися на інших сайтах More sharing options...
Recommended Posts