Перейти к содержанию
Официальный форум поддержки Simpla

Рекомендуемые сообщения

Набросал наймспесы https://github.com/simpladevru/simpla-namespace

 

открываем двери в мир https://getcomposer.org  :) будет продолжение...

 

- добавил namespace 

- удалил папку smarty

- удалил PclZip

- подправил проверку лицензии (на локальном с портом есть баг)

- добавил докер

Изменено пользователем DaVinci
Ссылка на сообщение
Поделиться на другие сайты
  • Ответов 253
  • Дата создания
  • Последний ответ

Лучшие авторы в теме

Лучшие авторы в теме

Изображения в теме

- переходим на InnoDB

 

и чистим код, привет FK :)

 

Вагрант прицеплю ближайшее время, пока наброски через Homestead, 

Миграции подтяну тоже (Phinx, у меня реализовано уже, но надо почистить...)...

и публичную папку, правда со всей админкой :) вот схема: http://forum.simplacms.ru/topic/13401-%D0%BA%D1%82%D0%BE-%D0%BD%D0%B8%D0%B1%D1%83%D0%B4%D1%8C-%D0%B2%D1%8B%D0%BD%D0%BE%D1%81%D0%B8%D0%BB-%D1%82%D0%BE%D1%87%D0%BA%D1%83-%D0%B2%D1%85%D0%BE%D0%B4%D0%B0-%D0%B2-%D0%BF%D0%B0%D0%BF%D0%BA%D1%83-public/page-2?do=findComment&comment=105850

Изменено пользователем Maksclub
Ссылка на сообщение
Поделиться на другие сайты

и чистим код, привет FK :)

 

Вагрант прицеплю ближайшее время, пока наброски через Homestead, 

Миграции подтяну тоже (Phinx, у меня реализовано уже, но надо почистить...)...

и публичную папку, правда со всей админкой :) вот схема: http://forum.simplacms.ru/topic/13401-%D0%BA%D1%82%D0%BE-%D0%BD%D0%B8%D0%B1%D1%83%D0%B4%D1%8C-%D0%B2%D1%8B%D0%BD%D0%BE%D1%81%D0%B8%D0%BB-%D1%82%D0%BE%D1%87%D0%BA%D1%83-%D0%B2%D1%85%D0%BE%D0%B4%D0%B0-%D0%B2-%D0%BF%D0%B0%D0%BF%D0%BA%D1%83-public/page-2?do=findComment&comment=105850

 

fk влетит первую очередь)) дамп почти готов

 

установщик уже переехал на  php 7.1

Изменено пользователем DaVinci
Ссылка на сообщение
Поделиться на другие сайты

Красавчик что тут скажешь!

И всё же глобальное наследование осталось(

post-347-0-20834500-1532517703_thumb.png

Изменено пользователем Noxter
Ссылка на сообщение
Поделиться на другие сайты

Затащил FK https://github.com/simpladevru/simpla-namespace/blob/master/simpla/update/simpla.sql

По коду пересмотрел, удалил что лишнее. Возможно что то упустил... Если что поправим.

 

Теперь забываем о том что бы чистить связи через php и мусоре в базе, все удаляется и обнуляется самой базой, думаем только о привязанных файлах



Красавчик что тут скажешь!
И всё же глобальное наследование осталось(
attachicon.gifScreenshot_1.png

 

еще не правил, все будет. тут правда вариантов может быть множество

Изменено пользователем DaVinci
Ссылка на сообщение
Поделиться на другие сайты

 

ну по ссылке Settings.php наследуется от Simpla это не то... 

 

Simpla на данный момент выполняет роль Multiton и все классы наследуется от него. Так вот от extends надо избавиться. Возможно в Simpla пробросить DI хотя на кой тогда вообще simpla.php, хз... очевидно надо экспериментировать а еще лучше если у кого есть мнение на данный счет можно обговорить. Желательно конечно в итоге прийти к скромному Service Locator

Изменено пользователем DaVinci
Ссылка на сообщение
Поделиться на другие сайты

ну по ссылке Settings.php наследуется от Simpla это не то... 

 

Simpla на данный момент выполняет роль Multiton и все классы наследуется от него. Так вот от extends надо избавиться. Возможно в Simpla пробросить DI хотя на кой тогда вообще simpla.php, хз... очевидно надо экспериментировать а еще лучше если у кого есть мнение на данный счет можно обговорить. Желательно конечно в итоге прийти к скромному Service Locator

 

Если я правильно понял, то под DI подразумевается передача объекта simpla в конструктор класса созданный же через Simpla? 

Если так то, но мой взгляд, уже практичней использовать какую нибудь автозагрузку классов или класс simpla с статическими методами:

simpla::api('products')->get_products();
Ссылка на сообщение
Поделиться на другие сайты

 

 

Если я правильно понял, то под DI подразумевается передача объекта simpla в конструктор класса созданный же через Simpla? 

Если так то, но мой взгляд, уже практичней использовать какую нибудь автозагрузку классов или класс simpla с статическими методами:

simpla::api('products')->get_products();

 

можно так или Simpla:$app->products->get_products() или simpla('products')->get_products() вариантов множество

Изменено пользователем DaVinci
Ссылка на сообщение
Поделиться на другие сайты

Лучше через класс и методы мне кажется. То static в функции как то дико смотрится, а через метод и класс - тогда можно обдумать различные роутеры и расширения типа:

simpla::api('products/petya_products')->get_products();

или же сатические маг. методы. А если через переменные - то будет проблематично создавать объекты по вызову

Изменено пользователем yr4ik
Ссылка на сообщение
Поделиться на другие сайты

Лучше через класс и методы мне кажется. То static в функции как то дико смотрится, а через метод и класс - тогда можно обдумать различные роутеры и расширения типа:

simpla::api('products/petya_products')->get_products();

или же сатические маг. методы. 

 

а что это products/petya_products? 

 

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

 

суть контейнера в том что бы пробросить в него сконфигурированные запчасти приложения. на данный момент этого воообще не возможно сделать так как все api ничего не принимают в свой конструктор при создании своих экземпляров. 

 

для того что бы подтянуть что то подобное если уж хочется положить репозиторий в стартовую загрузку приложения simpla::api('products/petya_products')->get_products(); то вероятнее всего я бы использовал интерфейс, который согласует все реализации. 

 

simpla::api(Products::class)->get_products();

 

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

interface Products
{
    public function get_products($filter): array;
    public function count_products($filter): array;
}

class PatyaProducts implements Products
{
    public function get_products($filter): array
    {
       ...
    }
    public function count_products($filter)($filter): array
    {
       ...
    }
}

Simpla::$container->singleton(Products::class, PatyaProducts::class);

или 

Simpla::$container->set(Products::class, function() {
   return new PatyaProducts();
});

 

но это все теория. 

Изменено пользователем DaVinci
Ссылка на сообщение
Поделиться на другие сайты

да и собственно докблок для такой записи simpla::api('products/petya_products') сложно сочинить, разве что прописывать его при каждом вызове

Ссылка на сообщение
Поделиться на другие сайты

products/petya_products это я так просто написал для примера. Подразумевал поочередный инклуд апишек и конструкт последнего с extends предыдущего.  Ну это так себе конечно. Но можно поковырять в этом направлении. Возможно что то по по расширению функционала можно придумать. 

Ссылка на сообщение
Поделиться на другие сайты

products/petya_products это я так просто написал для примера. Подразумевал поочередный инклуд апишек и конструкт последнего с extends предыдущего.  Ну это так себе конечно. Но можно поковырять в этом направлении. Возможно что то по по расширению функционала можно придумать. 

 

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

Изменено пользователем DaVinci
Ссылка на сообщение
Поделиться на другие сайты

Ребят, как по мне - вы херней занимаетесь))

Потому что Симпла - она изначальна сделана ДЛЯ КЛИЕНТА   :)

Если любой из вас мне покажет - 3 клиента, которые хотя бы слышали про КОМПОЗЕР - тогда я реально соглашусь, что это надо хоть кому-то...

Ссылка на сообщение
Поделиться на другие сайты

Ребят, как по мне - вы херней занимаетесь))

Потому что Симпла - она изначальна сделана ДЛЯ КЛИЕНТА    :)

Если любой из вас мне покажет - 3 клиента, которые хотя бы слышали про КОМПОЗЕР - тогда я реально соглашусь, что это надо хоть кому-то...

Это нужно в первую очередь для разработчиков так как упростит разработку в разы.

Имхо симпла морально устарела.

Ссылка на сообщение
Поделиться на другие сайты

Ребят, как по мне - вы херней занимаетесь))

Потому что Симпла - она изначальна сделана ДЛЯ КЛИЕНТА    :)

Если любой из вас мне покажет - 3 клиента, которые хотя бы слышали про КОМПОЗЕР - тогда я реально соглашусь, что это надо хоть кому-то...

 

я могу показать "100" разработчиков которые не возьмутся за поддержку проекта который не способен подтянуть уже ГОТОВЫЕ пакеты которых тысяч в открытом доступе. Это сегодняшняя реальность!

 

Клиент - это значит человек который совсем ни в чем не разбирается и хочет сделать сайт сам? так ему и симла сложной будет. Такое движение изначально обреченно на провал вне зависимости знает он что такое композер или нет.

 

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

 

так кто при таких раскладах в минусе?

Изменено пользователем DaVinci
Ссылка на сообщение
Поделиться на другие сайты

...подтянуть уже ГОТОВЫЕ пакеты которых тысяч в открытом доступе.

 

Звучит заманчиво.

 

А можно пару примеров таких пакетов и способов внедрения? Можно ли с их помощью, решить что-то из реально полезных давно назревших задач для Simpla? Например, интересные задачи:

1. сделать произвольную адресацию без /products и /catalog,

2. реализовать мультиязычность,

3. подключить модуль доставки, скажем, Укр Почты по их API.

Ссылка на сообщение
Поделиться на другие сайты

Звучит заманчиво.

 

А можно пару примеров таких пакетов и способов внедрения? Можно ли с их помощью, решить что-то из реально полезных давно назревших задач для Simpla? Например, интересные задачи:

1. сделать произвольную адресацию без /products и /catalog,

2. реализовать мультиязычность,

3. подключить модуль доставки, скажем, Укр Почты по их API.

 

в том виде в котором сейчас находится Симпла - комфортно нельзя, только с костылями. но при наличии соответствующей инфраструктуры проэкта почему бы нет https://packagist.org/?query=ukrpo

 

мультиязычность или маршрутизацию это вообще можно не обсуждать, их сотни https://packagist.org/packages/flinebux/ukrposhta-api?query=router

 

очевидно вы еще не пользовались, посмотрите там много интересных вещей

Изменено пользователем DaVinci
Ссылка на сообщение
Поделиться на другие сайты

очевидно вы еще не пользовались, посмотрите там много интересных вещей

Корс слишком стар чтобы понимать новые технологии.
Ссылка на сообщение
Поделиться на другие сайты

Знае6шь, тут я вдруг согласен с КОРСОМ

Симпла сделана для ЛЮДЕЙ, а не для композера)))

Если кто-то будет типа базарить за композер - я  ЛЮБОМУ желающему - дам поставить КОМПОЗЕР на реальном ХОСТЕ

Вот именно там, где всем ПОХУЮ на все они ПРИБЛИЗИТЕЛЬНО на этом языке оазговаривают

Ссылка на сообщение
Поделиться на другие сайты

Знае6шь, тут я вдруг согласен с КОРСОМ

Симпла сделана для ЛЮДЕЙ, а не для композера)))

Если кто-то будет типа базарить за композер - я  ЛЮБОМУ желающему - дам поставить КОМПОЗЕР на реальном ХОСТЕ

Вот именно там, где всем ПОХУЮ на все они ПРИБЛИЗИТЕЛЬНО на этом языке оазговаривают

 

давайте любой хостинг

 

странная фраза - симла сделана для людей... все остальное не для людей... Симла сделана на PHP и с тех пор когда она была сделана сам php ППЦ как шагнул в перед!!! На нормальный хостинг ее просто тупо не поставить! То есть нормальные хостинги не для нормальных людей? Очнись скоро 7.1 повсеместно будет а она просто тупо не устанавливается на него))))

 

Где кеш для нормальных людей?

Где транзакции для целостности данных для нормальных людей?

Где эластиксерч для нормальных людей с большим количеством товаров?

Где миграции для нормальных людей? Почему я не могу посмотреть все правки базы, мне надо перекидываться голыми запросами если я работаю в команде? это просто космос как нормально!!!!

Где тесты для нормальных людей что бы они сутками не перепроверяли работает ли их сайт после очередной правки?

Где человечески рестапи?

Да блин, где нормальное логирование???

require в каждом файле это для нормальных людей???  :D

И почему сам Денис выкладывает репозиторий в гид? Ведь у заказчиков мозг закипит от одного понимания для чего он нужен и как им пользоваться...

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

... продолжать можно долго... 

 

что конкретно кроется под НОРМАЛЬНЫХ ЛЮДЕЙ я не знаю... наверное для НАИВНЫХ людей. Получается что нормальные люди если им нравится концепция симплы не могут пользоваться нынешним прогрессом... и это нормально. 

 

Для чего тогда в сиплее вообще использовать классы? это ведь не совсем нормально с точки зрения нативного php который вообщем то сам по себе просто шаблонизатор? Или давайте уберем jquery есть голый javascript! А вместо базы будем использовать файлы! И вообще давайте сожжем всех ООП-ников на костре потому что они богохульники, а функциоанльщики вообще не с этой планеты. Просто смех.....

 

Простота это не означает полная деградация...

Изменено пользователем DaVinci
Ссылка на сообщение
Поделиться на другие сайты

в том виде в котором сейчас находится Симпла - комфортно нельзя, только с костылями. но при наличии соответствующей инфраструктуры проэкта почему бы нет https://packagist.org/?query=ukrpo

 

мультиязычность или маршрутизацию это вообще можно не обсуждать, их сотни https://packagist.org/packages/flinebux/ukrposhta-api?query=router

 

очевидно вы еще не пользовались, посмотрите там много интересных вещей

 

А можно какой-нибудь пример? Не могли бы Вы для примера выбрать из тысяч пакетов один средней сложности и написать, как его "подтянуть". По возможности, чтобы владельцу сайта на Simpla с опытом установки доработок было понятно. Пусть хотя бы и с костылями - потерпим, на этом форуме доработки без костылей - редкость...

Изменено пользователем phukortsin
Ссылка на сообщение
Поделиться на другие сайты

Присоединяйтесь к обсуждению

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

Гость
Ответить в этой теме...

×   Вставлено с форматированием.   Вставить как обычный текст

  Разрешено использовать не более 75 эмодзи.

×   Ваша ссылка была автоматически встроена.   Отображать как обычную ссылку

×   Ваш предыдущий контент был восстановлен.   Очистить редактор

×   Вы не можете вставлять изображения напрямую. Загружайте или вставляйте изображения по ссылке.

Загрузка...

×
×
  • Создать...