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

Recommended Posts

Всем привет! Я вот недавно начал смотреть на опенкарт как на систему для разработки магазинов. Пришел с друпала, который сам себя загибает своей идеологией. Но сейчас не о нем...

Вопрос вот в чем:

Я, мягко говоря, ужаснулся, когда начал смотреть в сторону системы блоков на сайте. Если ее нету, то все ок, но она вроде бы как есть.

Стала задача добавить новый блок, и я обнаружил, что просто так это, обычно простое, дело не провернуть. Придется переписывать хардкод во всех уже существующих блоках...

Поначалу мне вообще как-то дико казалось создавать руками единицу мвц для каждого "отделения", но после увиденного в системе позиций решил написать здесь =)

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

Извиняюсь, если задел чьи-то чувства, но вот просто интересно. Это же противоречит принципам ооп, да и вообще здравому смыслу =) Наверное, такое мнение сложилось еще из-за того, что многие эту систему рекомендовали посмотреть как эталон реализации мвц..

Спасибо.

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


Наверное под блоком, вы имеете ввиду "Модули", так у нас они называются, структура MVC довольно универсально, необязательно создавать файл модели, для вывода данных в 'view' файл, можно так же обратиться в контроллере в базу или можно подгрузить данные из модели другого файла...

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

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

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


Как я вас понимаю :) Тоже пришел в Оупенкарт неделю назад после 2-х лет работы с Друпалом. Сделал на нем (d6+ubercart) несколько магазинов, потом вышла семерка с коммерсом где для добавления товара нужно сначала добавить сам товар а потом еще и представление.. в общем перемудрили маленько. А в восьмерку вообще кусок симфони засунули.. Решил подыскать новый движок для магазина по отзывам решил попробовать Оупенкарт.

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

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

Слабое апи.

Слабая документация. По сравнению с Друпалом где описана каждая ф-ция для каждой версии с примерами кода. Тут чтобы разобраться как все работает нужно тупо пересмотреть весь код движка (правда сделать это можно за несколько часов).

Модули их достаточно много особенно на оф. сайте но почти все нормальные модули платные. По сравнению с Друпалом где больше 10000 модулей и за 2 года я не встретил ни одного платного это конечно не сильно радует.

Блоки. Да, такого понятия как друпаловский блок тут наверное и нету. Есть понятие модуль с помощью которого можно создать блок (напр. последние товары) и разместить где-то на сайте. Есть модуль (вроде html называется) который позволяет создавать текстовые блоки.

А насчет минимализма - с одной стороны это даже хорошо. Если навесить хук на каждое действие то в результате может получиться что-то похожее на тот же Друпал.. и по скорости работы и по сложности обучения.

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

Да вы правы, для добавления нового блока надо переписывать всё ядро движка. По крайней мере пару недель назад мне понадобилось выводить позицию не только в column_right, column_left, content_bottom и content_top а ещё и ближе к центру. И после 5 часовых манипуляций с файлами - я понял что пока мне это не под силу, и просто создал дополнительные поля в готовых блоках в виде хтмл таблицы (что не есть хорошо в целом). Пробовал добавлять ещё один блок по примеру вышеперечисленных, прописывал в контроллере и модулях, но безрезультатно. Считаю это одним из немногих минусов ОК - невозможность (либо геморойность) произвольного расположения блоков.

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


Да, разобрался за пару дней, все просто, мвц и тд. Но мой врожденный перфекционизм не дает мне нормально спать после такой писанины...

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

Про хуки тут нельзя говорить, еще вздумается =) Друмал перерос сам себя, он как цмс слишком тяжелый и глючный, как цмф слишком "готовый". Сложный, относительно своего назначения: упрощать жизнь.

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

В таком виде я на опенкарте не могу.... возможно, сделаю свою сборку, но так говнокодить у меня не получается - спать не могу =)

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


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

В таком виде я на опенкарте не могу.... возможно, сделаю свою сборку, но так говнокодить у меня не получается - спать не могу =)

да вы сделайте сперва, писать на форуме каждый может. был тут один товарищ и хуки он сделал и helper'ами код расширил, всё грозился выложить, да так мы ничего не увидели

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

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

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

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

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

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

Вхід

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

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

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

Important Information

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