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

Opencart 4.x Is Coming!


Yoda

Recommended Posts

  В 19.10.2020 в 08:04, Vladzimir сказав:

Значит нужно просто лишнее вырезать,а не строить очередной слой абстракции.

Я уже видел одну CMS в которой абстракция на абстракции сидит и абстракцией погоняет.

И понять что и самое главное как там работает еще тот квест.

Expand  

 

щас эти разговоры не имеют смысла

как будет так будет и или придется подстраиваться или сделают совсем гавно и придется валить на магенту

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

  В 19.10.2020 в 08:16, spectre сказав:

щас эти разговоры не имеют смысла

как будет так будет и или придется подстраиваться или сделают совсем гавно и придется валить на магенту

Expand  

 

Лучше разговаривать с создателем и предлагать.

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

  В 19.10.2020 в 19:55, buslikdrev сказав:
Expand  

И что - это нативно? Ест доступ из каких-бы то ни было системных ресурсов и возможность модифицирования ?

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


  В 19.10.2020 в 20:05, Yoda сказав:

И что - это нативно? Ест доступ из каких-бы то ни было системных ресурсов и возможность модифицирования ?

Expand  

Добавил такое (Но лучше сделать с проверками для исключения повторений и т.д.):

 

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

  В 18.10.2020 в 22:11, Yoda сказав:

Вы работали с базами на сотни тысяч записей, в которых у сущностей пару сотен неоднородных свойств.

Какой простите orm в такой ситуации? К чему эти все предварительные глобальные инициализации наборов, а потом выборка путем перебора огромного объекта в памяти. 

Расскажите про ORM любому архитектору мало мальски нагруженного проекта, где каждая лишняя итерация это ещё пару лишних железных серверов. И тогда поговорим. А эти миллеинальные восторги технологиями ваши, я не очень разделяю.

Expand  

Давайте обойдёмся без громких слов, сколько бы миллионов товаров у меня не было, я беру лишь те, что мне нужны и это кол-во не напрягает БД, так к чему Ваш коммент?

Product::status(true)->get(['title', 'price'])->pagination(30) - Где тут проблема?

Не стоит всех ровнять под одну гребёнку, всегда можно обойтись к примеру фасадом БД. Или Вы считаете у всех миллионы товаров?

Подобная структура таблиц, вот что кромешное дно!

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

  В 21.10.2020 в 20:25, Doza сказав:

Давайте обойдёмся без громких слов, сколько бы миллионов товаров у меня не было, я беру лишь те, что мне нужны и это кол-во не напрягает БД, так к чему Ваш коммент?

Product::status(true)->get(['title', 'price'])->pagination(30) - Где тут проблема?

Не стоит всех ровнять под одну гребёнку, всегда можно обойтись к примеру фасадом БД. Или Вы считаете у всех миллионы товаров?

Подобная структура таблиц, вот что кромешное дно!

Expand  

Да не... У нас в вами разговор тогда будет как у бомжа и ресторанного критика. Я не готов обсуждать любой тезис с профанами.

Если вы там что-то Нафантазировали. Пусть так и будет. В дурдоме все Наполеоны. И ниче. Как-то живут.

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


  В 21.10.2020 в 21:13, Yoda сказав:

Да не... У нас в вами разговор тогда будет как у бомжа и ресторанного критика. Я не готов обсуждать любой тезис с профанами.

Если вы там что-то Нафантазировали. Пусть так и будет. В дурдоме все Наполеоны. И ниче. Как-то живут.

Expand  

Когда нечего ответить говорим лозунгами? Что же, пусть будет так..

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

  В 21.10.2020 в 21:51, Doza сказав:

Ты серьёзно?))

Expand  

Если вы говорите о eloquent ваш запрос не будет работать, Product::whereStatus(true)->select('title, price')->paginate(30) вот так будет, и без пакета от спати, если вы его используете другого конечно объяснения у меня нет откуда взялся статус

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

  В 21.10.2020 в 22:32, stickpro сказав:

Гет это метод который запускает запрос пагинация уже не сработает после, ТК она сама запускает запрос

Expand  

Так ресторанный критик должен мне об этом рассказать, нет?

 

Интересно, как думаете, yoda ответит?))

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

  В 21.10.2020 в 22:28, stickpro сказав:

Если вы говорите о eloquent ваш запрос не будет работать, Product::whereStatus(true)->select('title, price')->paginate(30) вот так будет, и без пакета от спати, если вы его используете другого конечно объяснения у меня нет откуда взялся статус

Expand  

Что касается статуса, всё верно, и вот вам привет =)))

image.png.3cbd0787a454e20f8b00c6732270bca0.png

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

  • 1 month later...

от говнокода так и не избавились

<ul class="breadcrumb">
{% for breadcrumb in breadcrumbs %}
<li class="breadcrumb-item"><a href="{{ breadcrumb.href }}">{{ breadcrumb.text }}</a></li>
{% endfor %}
</ul>
$data['breadcrumbs'][] = [
	'text' => $category_info['name'],
	'href' => $this->url->link('product/category', 'language=' . $this->config->get('config_language') . '&path=' . $this->request->get['path'])
];

 

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


использовать такое им не мешает

$mail = new \Opencart\System\Library\Mail($this->config->get('config_mail_engine'));

а такое мешает

data['logo'] = $this->model_tool_image->resize(...)

да и какое отношение image имеет к моделям вообще 

почему не использовать Image::resize(...)

 

 

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


  • 4 weeks later...
  В 18.10.2020 в 09:44, Vladzimir сказав:

Или хотя бы QueryBuilder

Expand  

 

Ну собственно ORM предполагает использование какого-то QueryBuilder, чтобы трансформировать объектную модуль в SQL запросы. Это бы ОС точно не помешало. Пора уже как то разработчикам ОС двигаться хотя бы в 20 век, а то уже на дворе 21 :-). И уж лучше бы взять какую нибудь вменяемую ORM-библиотеку вроде Doctrine.

Да и вообще можно больше компонентов и решений от Symfony позаимствовать.

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


  В 19.10.2020 в 08:00, Vladzimir сказав:

ORM будет быстрее по вашему?

 

Expand  

Применение то же Doctrine дает 2 очевидных выгоды. Во-первых это действительно может дать ускорение работы хотя бы уже потому, что в этой библиотеке есть средства кэширования работы непосредственно с базой данных. Во-вторых, возможность ОС работать на разных СУБД, потому что если оперировать только ORM объектами при разработке своего кода, то дальше можно подключать разные библиотеки перевода объектной модели в запросы к разным СУБД и не только реляционные (поддерживается например MongoDB).

 

В Doctrine есть и еще одна фишка, которую тоже можно было бы использовать для ускорения системы. Можно добавлять атрибуты в специальную таблицу, на основании которой регенерировать классы сущностей Doctrine, с помощью которых регенерировать таблицы хранения данных товаров, категорий, клиентов и таким образом добавлять любые типы полей. То есть сделать механизм, аналогичный Мадженто, который позволяет хранить данные о товарах в плоских таблица, что значительно ускоряет работу с базой данных.

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


  В 03.01.2021 в 12:23, EVMedvedev сказав:

То есть сделать механизм, аналогичный Мадженто, который позволяет хранить данные о товарах в плоских таблица, что значительно ускоряет работу с базой данных.

Expand  

Чтобы стать недоманджентой? Со слабым функционалом, зато с высокой нагрузкой?

Все эти абстракции над абстракциями дают только допнагрузку и шильдик со стразиками.

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

  В 18.10.2020 в 09:08, legioner26 сказав:

Сморю там пространство имен и все такое. Ну тогда уже пусть ORM еще делают )))

Expand  

Там вопрос не в ORM и пространстве имен, не прошло и десять лет, а появилась возможность устанавливать временную зону

 

  В 19.10.2020 в 07:45, legioner26 сказав:

Ну как в Laravel к примеру, строитель. Можно сложные выборки со связями делать в 2 счета, получить нужную коллекцию.

Expand  

То ты не видел, как на 100 к записях по 70 полей  в каждой делается SELECT(id=2 FROM(SELECT * FROM table)).

ORM, быстрым магазинам - не товарищ!

  

  В 04.01.2021 в 10:26, Vladzimir сказав:

Чтобы стать недоманджентой? Со слабым функционалом, зато с высокой нагрузкой?

Все эти абстракции над абстракциями дают только допнагрузку и шильдик со стразиками.

Expand  

Пока будет частичная нормализация и не будет сводных таблиц, весь оверхед на ООП абстракции - это экономия на спичках. 
Основной затык - где.. В SELECT from oc_product_description JOIN oc_product - а потом сортировка группировка по полям из разных таблиц. Mysql так быстро делать не умеет от слова совсем - ей подавай одну плоскую таблицу - тогда там и индексы все оживут и проблем с производительностью нет.

Вот кстати этот механизм по моему в magento и реализован. Но Даниэль отклонил прекалькуляцию product_total от стика. Так что, свобдных таблиц - мы вряд ли дождемся.

А вот пихнуть конструктор запросов - реально ни что не мешает.

 

Да  и в целом приведение кода к современным стандартам - это уже неплохо. Правда отсеется сразу половина студентов, которые слабо понимают чем i++ отличается от ++i.

 

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


  В 04.01.2021 в 10:26, Vladzimir сказав:

Чтобы стать недоманджентой? Со слабым функционалом, зато с высокой нагрузкой?

Все эти абстракции над абстракциями дают только допнагрузку и шильдик со стразиками.

Expand  

 

Если вы в чем то не разбираетесь, то это еще не значит, что это плохо вообще. Это плохо только в ваших глазах. Кстати использование ORM еще позволяет и избавить ОС от спагетти кода работы с данными, размазанного между двумя разделами (catalog и admin). Это такой отстой, который кажется остался только в ОС. 

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


  В 05.01.2021 в 12:52, EVMedvedev сказав:

 

Если вы в чем то не разбираетесь, то это еще не значит, что это плохо вообще. Это плохо только в ваших глазах. Кстати использование ORM еще позволяет и избавить ОС от спагетти кода работы с данными, размазанного между двумя разделами (catalog и admin). Это такой отстой, который кажется остался только в ОС. 

Expand  

Есть такое понятие как оптимум. Так вот ORM дает гибкость, но ни как не скорость.

Opencart умудряется быть и функциональным и относительно быстрым. Вы же предлагаете ввинтить в него очередной утяжелитель.

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

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

  В 18.10.2020 в 09:52, spectre сказав:

там так поковырять много интересного

например нет папки theme

Expand  

Там теперь и контроллеры и все файлы, будут скорее всего модифицируемыми от модуля, папка extension в корне

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

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

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

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

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

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

Вхід

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

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

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

Important Information

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