phukortsin Posted November 5, 2020 Report Share Posted November 5, 2020 Не понял ничего. Вроде бы вопрос простой должен быть для специалиста. Возникает ошибка, строка указана. Если Вам нетрудно, дайте простой понятный ответ по делу. Если не можете/не хотите, то хотя бы не гоните флуд... Quote Link to post Share on other sites
DaVinci Posted November 5, 2020 Author Report Share Posted November 5, 2020 (edited) 9 минут назад, phukortsin сказал: Не понял ничего. Вроде бы вопрос простой должен быть для специалиста. Возникает ошибка, строка указана. Если Вам нетрудно, дайте простой понятный ответ по делу. Если не можете/не хотите, то хотя бы не гоните флуд... Вопрос быть может и простой но Если вы правда не знаете в чем суть ошибки то простым ответом я не смогу вам помочь. но в целом проблема той среды в которой вы пытаетесь развернуть приложение. Корс, вы же как будто программист. На ваш вопрос ответит мануал. И да, я не имею ни малейшего желания вам отвечать на какие либо вопросы. Можете впредь их мне не задавать Edited November 5, 2020 by DaVinci Quote Link to post Share on other sites
phukortsin Posted November 5, 2020 Report Share Posted November 5, 2020 (edited) 33 минуты назад, DaVinci сказал: но в целом проблема той среды в которой вы пытаетесь развернуть приложение. Спасибо, уже что-то по существу со второй попытки. А есть какие-то системные требования? Или может, есть где-то простой установщик, чтоб эти требования проверял и сообщал о несоответствии? 33 минуты назад, DaVinci сказал: И да, я не имею ни малейшего желания вам отвечать на какие либо вопросы. Можете впредь их мне не задавать Поскольку Вы большой специалист с опытом, то должны бы знать, что один из основных принципов форума - возможность задавать вопросы открыто для всех участников. Можно бы и догадаться, что спрашивающему важнее ответ по существу, а кто именно ответит - момент второстепенный. Вопрос задается не Вам персонально, а сообществу. Если у Вас нет желания отвечать на мои вопросы, не делайте этого. Вас никто не принуждает, это дело исключительно добрвольное. Единственное пожелание - не гоните флуд вместо ответа, лучше промолчите... Edited November 5, 2020 by phukortsin Quote Link to post Share on other sites
a13x Posted November 5, 2020 Report Share Posted November 5, 2020 В 05.11.2020 в 06:33, DaVinci сказал: return $this->get_purchases()->sum(fn (Purchase $purchase) => $purchase->get_cost()); В этой строке вы вызываете метод get_cost(), но почему то не написали его строки. Если быть честными до конца, то пишите всё что связано с вашей строкой, а не просто одну строку. Я ведь тоже могу кучу кода закинуть в одну функцию и вызвать её, при этом не показав как она выглядит. Ладно, всё это не по теме, можете не отвечать. По остальному не хочу разводить оффтоп. Quote Link to post Share on other sites
DaVinci Posted November 5, 2020 Author Report Share Posted November 5, 2020 (edited) 4 часа назад, a13x сказал: В этой строке вы вызываете метод get_cost(), но почему то не написали его строки. Если быть честными до конца, то пишите всё что связано с вашей строкой, а не просто одну строку. Я ведь тоже могу кучу кода закинуть в одну функцию и вызвать её, при этом не показав как она выглядит. Ладно, всё это не по теме, можете не отвечать. в этом и есть смысл ООП - вынести в абстракцию суть имплементации. Не смотря на то что за каждым вызываемым методом нет кучи кода https://github.com/simpladevru/simpla-namespace/blob/1abca7c0e5bb2eb4e2589d39858aac1ec99ce5f5/api/components/cart/base/Purchase.php#L76, она могла бы там быть. Но при написании конкретного метода нас это не волнует, мы абстрагированы от деталей реализации и пользуемся предоставленными интерфейсами. 4 часа назад, a13x сказал: Я никого никогда не оскорбляю, поэтому я не могу с него брать пример. Всё что я делаю это веду общение на форуме и уважительно отношусь ко всем участникам форума. ваши попытки участвовать в обсуждении на экспертном уровне уже оскорбление) 4 часа назад, a13x сказал: Я ведь тоже могу кучу кода закинуть в одну функцию и вызвать её а вот в этом я не сомневаюсь. вопрос только в том можете ли вы из этой кучи сделать что то более достойное. Edited November 5, 2020 by DaVinci Quote Link to post Share on other sites
phukortsin Posted November 5, 2020 Report Share Posted November 5, 2020 Что-то у меня админка совсем не работает... Нашел в теме сообщение двухлетней давности: В 12.08.2018 в 16:04, Noxter сказал: DaVinci, на php 7.2 открой админку посмотри на ошибки. Я так понимаю, это и не исправлялось... Quote Link to post Share on other sites
DaVinci Posted November 5, 2020 Author Report Share Posted November 5, 2020 (edited) 3 часа назад, a13x сказал: По остальному не хочу разводить оффтоп. да вы только этим и занимаетесь на протяжении всего пребывания в данной теме и при этом говорите об уважении. Изначально вы заявили что в симпле есть ооп, но примеры не показали. Просьба реализовать полиморфные товары это всего лишь показатель того что у вас нет понимание отсутствия модели товара в целом. Когда вам показали примеры ооп вы назвали это кучей кода спрятанной за методом. Оказалось что кучи там нет но это ведь уже и не важно для вас. Вы против модулей, пакетов которые можно подтянуть из репозитория но так и не ответили чем бы отличалась ваша доработка интегрированная в симплу или импортированная из пакета. Вы способны писать кучи кода с комментариями но я не видел в вашем исполнении и других подходов которые могли бы говорить о том что вы способны конструктивно участвовать в обсуждении. разве вы сами не заметили что все ваши сообщения оффтоп? Edited November 5, 2020 by DaVinci Quote Link to post Share on other sites
Kami Posted November 5, 2020 Report Share Posted November 5, 2020 В 01.11.2020 в 21:22, Drake777 сказал: В данном случае не он заявлял про болячки Симплы, а вы. Стрелки не надо переводить) Меня не интересует окей, меня интересуют заявленные вами болячки симплы, которые даже на окей перебрались. Не костыли, неудобства и т.д, а именно болячки, про которые вы заикнулись. Не знаю насколько это болячка, но Окай 3 ветка как и симпла сыпет ошибку [05-Nov-2020 21:18:23 Europe/Moscow] PHP Deprecated: Function get_magic_quotes_gpc() is deprecated in /home/m/public_html/Okay/Core/Request.php on line 276 хотя вроде заявляют что их 3 версия отлично работает на 7 версии PHP Quote Link to post Share on other sites
phukortsin Posted November 6, 2020 Report Share Posted November 6, 2020 (edited) 12 часов назад, Kami сказал: Не знаю насколько это болячка, но Окай 3 ветка как и симпла сыпет ошибку [05-Nov-2020 21:18:23 Europe/Moscow] PHP Deprecated: Function get_magic_quotes_gpc() is deprecated in /home/m/public_html/Okay/Core/Request.php on line 276 хотя вроде заявляют что их 3 версия отлично работает на 7 версии PHP Заявлять-то они заявляют. Но в реальности несколько иначе. В доках можно найти, что 7.4. функция объявлена УСТАРЕВШЕЙ, начиная с PHP 7.4.0 и ее использование крайне не рекомендовано. 5.4. Всегда возвращает FALSE, так как функционал магических кавычек удален из PHP. То есть эта функция реально не работает, а в лучшем случае просто место занимает. Потому и сыплет пока лишь предупреждения. А в будущих версиях, возможно, будет давать настоящую фатальную ошибку. И началось это с еще с версии 5.4, а разработчики до сих пор ее вставляют копированием. Для Simpla, которая писалась лет 10 назад под версию 5.2, это вполне нормально и допустимо. Но для современных новых разработок это уже недостаток. И не только Okay продолжает использовать эту давно устаревшую функцию. В разработке ТС она тоже участвует. И на старуху бывает проруха... Edited November 6, 2020 by phukortsin Quote Link to post Share on other sites
DaVinci Posted November 6, 2020 Author Report Share Posted November 6, 2020 Кстати добавил в исходник докер, вместо ваграна Quote Link to post Share on other sites
Kami Posted November 6, 2020 Report Share Posted November 6, 2020 3 часа назад, phukortsin сказал: Заявлять-то они заявляют. Но в реальности несколько иначе. В доках можно найти, что 7.4. функция объявлена УСТАРЕВШЕЙ, начиная с PHP 7.4.0 и ее использование крайне не рекомендовано. 5.4. Всегда возвращает FALSE, так как функционал магических кавычек удален из PHP. То есть эта функция реально не работает, а в лучшем случае просто место занимает. Потому и сыплет пока лишь предупреждения. А в будущих версиях, возможно, будет давать настоящую фатальную ошибку. И началось это с еще с версии 5.4, а разработчики до сих пор ее вставляют копированием. Для Simpla, которая писалась лет 10 назад под версию 5.2, это вполне нормально и допустимо. Но для современных новых разработок это уже недостаток. И не только Okay продолжает использовать эту давно устаревшую функцию. В разработке ТС она тоже участвует. И на старуху бывает проруха... не, ну это то что я заметил именно с симплы на окай 3 что перекочевало. Тут вроде как вопрос задавали что там за ошибка перенеслась Quote Link to post Share on other sites
phukortsin Posted November 6, 2020 Report Share Posted November 6, 2020 4 часа назад, Kami сказал: не, ну это то что я заметил именно с симплы на окай 3 что перекочевало. Тут вроде как вопрос задавали что там за ошибка перенеслась Тут вроде как на вопрос ответили в том смысле, что вопрос не по теме форума и послали за ответом на форум Okay. Если интересуют ошибки в Simpla, то на этом форуме ищите, материалов предостаточно. Если интересуют ошибки в Okay, то на соответствующем форуме также масса информации. Если же интересуют ИМЕННО те ошибки в Simpla, которые перекочевали, то это намного сложнее. Например, потому что в Okay версии появляются весьма часто, и в разных версиях набор ошибок разный (да и в Simpla тоже). Если интересует вопрос именно в таком виде, то надо проводить масштабное иследование по каждой паре (по многим парам) версий, что потребует больших трудовых и (или) финансовых затрат... Quote Link to post Share on other sites
phukortsin Posted November 6, 2020 Report Share Posted November 6, 2020 5 часов назад, Kami сказал: не, ну это то что я заметил именно с симплы на окай 3 что перекочевало. Тут вроде как вопрос задавали что там за ошибка перенеслась Например, и Simpla и Okay одинаково плохо работают с большим количеством категорий (это как раз перекочевало). Вот свежая тема про это: Quote Link to post Share on other sites
a13x Posted November 6, 2020 Report Share Posted November 6, 2020 Цитата Например, и Simpla и Okay одинаково плохо работают с большим количеством категорий (это как раз перекочевало). Вот свежая тема про это: тут как вариант хранить в БД вложенность всех категорий для товара, а не так как сейчас, только для посл. категории. Quote Link to post Share on other sites
DaVinci Posted November 6, 2020 Author Report Share Posted November 6, 2020 Тут как вариант сперва посмотреть на explain а не гадать на кофейной гуще или строить иллюзорные предположения. Quote Link to post Share on other sites
phukortsin Posted November 6, 2020 Report Share Posted November 6, 2020 (edited) Простой пример. В приложениии файл для импорта, всего 100К, который создает много категорий (500 товаров, у каждого 4 категории 5-го уровня). На свежеустановленной Simpla имеем memory peak usage обычно 2-3 Mb. После импорта файла получаем уже memory peak usage: 14 Mb. Как Вам такие масштабы? Как по мне, очевидно присутствует большая нерациональность работы с категориями... Файл не хочет загружаться. Кого заинтересует, пишите в личку... Edited November 6, 2020 by phukortsin Quote Link to post Share on other sites
ST_RU Posted November 6, 2020 Report Share Posted November 6, 2020 51 минуту назад, phukortsin сказал: Файл не хочет загружаться. Кого заинтересует, пишите в личку... в google docs можно ссылку разместить. или другое облако. ps: всю тематику ветки сбили своими спорами Quote Link to post Share on other sites
a13x Posted November 7, 2020 Report Share Posted November 7, 2020 13 часов назад, phukortsin сказал: Как Вам такие масштабы? Как по мне, очевидно присутствует большая нерациональность работы с категориями... Что значит нерациональность? Если у вас есть идея как исправить это - пишите, но боюсь что таковой нет. Я написал как это можно исправить, но врядли кто-то это будет делать, лучше вон перепишут симплу, только толку от этого как всегда ноль! Quote Link to post Share on other sites
DaVinci Posted November 7, 2020 Author Report Share Posted November 7, 2020 24 минуты назад, a13x сказал: Что значит нерациональность? Если у вас есть идея как исправить это - пишите, но боюсь что таковой нет. Я написал как это можно исправить, но врядли кто-то это будет делать, лучше вон перепишут симплу, только толку от этого как всегда ноль! а можете показать практический пример того о чем вы написали? Quote Link to post Share on other sites
a13x Posted November 7, 2020 Report Share Posted November 7, 2020 Пример: Есть товар А с id = 10 который находится в категории M с id = 500. Категория М вложена в категорию L с id = 400, L в свою очередь вложена в K = 300. В таблице соответствия products_categories у нас 1 запись: 10, 500, 0. Соотв. при входе в категорию K в запрос идут все дочерние ID: (300,400,500). Чтобы этого избежать надо в таблице соответствия products_categories добавить ещё 2 записи: 10, 400, 0. 10, 300, 0. Тогда при заходе в категорию К достаточно будет проверять только по ID 300. Да, записей в таблице возрастёт, но лучше больше записей в таблице, чем запросы с кучей ID. Quote Link to post Share on other sites
DaVinci Posted November 7, 2020 Author Report Share Posted November 7, 2020 (edited) 37 минут назад, a13x сказал: Пример: Есть товар А с id = 10 который находится в категории M с id = 500. Категория М вложена в категорию L с id = 400, L в свою очередь вложена в K = 300. В таблице соответствия products_categories у нас 1 запись: 10, 500, 0. Соотв. при входе в категорию K в запрос идут все дочерние ID: (300,400,500). Чтобы этого избежать надо в таблице соответствия products_categories добавить ещё 2 записи: 10, 400, 0. 10, 300, 0. Тогда при заходе в категорию К достаточно будет проверять только по ID 300. Да, записей в таблице возрастёт, но лучше больше записей в таблице, чем запросы с кучей ID. Если при этом изменить вложенность категорий? + не совсем понятно как при этом должен выглядеть запрос в базу для выборки товаров по конкретной категории с учётом предложенной схемы Edited November 7, 2020 by DaVinci Quote Link to post Share on other sites
a13x Posted November 7, 2020 Report Share Posted November 7, 2020 (edited) 16 минут назад, DaVinci сказал: Если при этом изменить вложенность категорий? Если все дочерние в передлах родителя то не думаю что должны быть проблемы. Если же переносить за пределы родителя то надо уже более детально смотреть что и как. Edited November 7, 2020 by a13x Quote Link to post Share on other sites
DaVinci Posted November 7, 2020 Author Report Share Posted November 7, 2020 (edited) 2 минуты назад, a13x сказал: Если все дочерние в передлах родителя то не думаю что должны быть проблемы. Если же переносить за пределы родителя то удалить все категории и добавить заново, как это повсеместно сделано в симпле. Так это надо будет сделать только для одного товара? + учитываем многие ко многим Edited November 7, 2020 by DaVinci Quote Link to post Share on other sites
a13x Posted November 7, 2020 Report Share Posted November 7, 2020 (edited) 5 минут назад, DaVinci сказал: Так это надо будет сделать только для одного товара? Почему для одного, для всех у которых есть эта категория. Т.е. Если меняем категорию с id = 400, то выбираем все товары где есть эта категория и все дочерние (500), удаляем привязки (400 и 500), добавляем нового родителя (т.к. мы перенесли 400 в например 200) для 400-ой категории и всех дочерних категорий (напр. 600 и 700). Хотя по видимому 400-ую даже удалять не надо, только его дочерних (500). Edited November 7, 2020 by a13x Quote Link to post Share on other sites
DaVinci Posted November 7, 2020 Author Report Share Posted November 7, 2020 Только что, a13x сказал: Почему для одного, для всех у которых есть эта категория. Т.е. Если меняем категори с id = 400, то выбираем все товары где есть эта категория и все дочерние, удаляем привязки, добавляем нового родителя (например id = 200) для 400-ой категории и всех дочерних категорий (напр. 600 и 700). Как я понял надо пройтись по всем родительским категориям, выбрать все относящиеся к ним товары и создать для них новые branch записи. Наверное да, теоретически должно работать. Только стоит переживать за запрос формирующий новые привязки Quote Link to post Share on other sites
Recommended Posts
Join the conversation
You can post now and register later. If you have an account, sign in now to post with your account.