Всего 123 785 комментариев

Vaha30
31 октября 2012, 08:53
0
Разрулил таки вчера эту проблему. А все дело в прямой зависимости от регистра в названиях таблиц в настройках MySQL сервера. Если посмотреть на логи, указанные выше, то у всех таблицах компонента miniShop присутсвуют заглавные буквы, например 'modx_ms_modGoods'. В моем случае это и являлось проблемой. В базе данных в названиях таблиц были все буквы прописными. На том хостинге (Джино), где ресурс временно размещался, в настройках MySQL не указывалась явная зависимость от регистра, и проблемы не было.
Путем переименования таблиц компонента miniShop в phpMyAdmin одним SQL-запросом все заработало как часики.
P.S. Василию огромный респект за разработку компонента!
Иван Брежнев
30 октября 2012, 23:31
0
Красава ))
Viktor Minator
30 октября 2012, 23:27
0
вероятнее всего неправильно перенесли сайт…
Vaha30
30 октября 2012, 11:13
0
Проблема так и осталась, те же ошибки в логах, таблицы на месте. отписал хостеру…
Евгений Тимочкин
29 октября 2012, 16:26
0
Здравствуйте.
Тема очень интересна. Сейчас рассматриваю возможность использования процессоров для создания контента из front-end'a сайта (ну не хочу я пускать всех в mgr, да и конечному пользователю будет удобно из front-end'a работать). Конкретно пытаюсь сделать добавление статей в блог. Может я конечно изобретаю велосипед, и все уже написано за меня? Не поможете советом по этому вопросу?
Евгений Дурягин
29 октября 2012, 11:41
0
Дак вы используете MIGX или все-таки MIGXdb?
MIGXdb данные хранит не в JSON, а в таблице, которую вы сами же и определяете. А доступ к ней можно сделать через xPDO $modx->getObject, $modx->getCollection итд
Vaha30
29 октября 2012, 09:01
0
pdo_sqlite драйвер подключил, но без изменений. Что самое интересное, все остальное работает без проблем за исключением компонента miniShop. Ругается, что не видит таблиц, но они же есть!
Vaha30
29 октября 2012, 06:35
0
Таблицы все на месте, просто сайт был перенесен с другого хостинга, здесь вероятнее всего что то упущено в настройках сервера
Василий Наумкин
29 октября 2012, 05:09
0
Вам говорят что нет таблиц. Первым делом проверьте их наличие через PhpMyAdmin.
Алексей
29 октября 2012, 00:57
0
develop.modx.com/develop/revolution/requirements/

PDO, with database driver(minimal requirements)

pdo_sqlite драйвер мб?
Николай
29 октября 2012, 00:47
0
Как отображать описано вмануале это все ясно… у меня вопрос как правильно (через скрипт) манипулировать уже имеющимся в TV данными

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

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

У меня просто руки не доходят потеснить это дело я вот и спросил МБ кто уже плавал знает
Евгений Дурягин
28 октября 2012, 12:54
0
Вы смотрите пример как в таблице отображать ресурсы с TV. Вам это надо?
Поэтому и работает myClass->setTVValue(«prise»,$prise), т.к. myClass скорей всего является наследником modResource, а значение хранится в TV.

Или все же вам надо у каждого ресурса сделать список значений в виде таблицы и хранить это все в базе?
Николай
28 октября 2012, 04:20
0
угу я именно так и планирую просто… интересует как правильнее это делать)
Виталий Батушев
28 октября 2012, 03:00
0
Мануал или код все-таки? Мануал MIGX, конечно, довольно скромный, но это больше касается MGIX-db, а с самим MIGX там особо нечего разбираться. Я мигиксы в каждом проекте использую. Пару-тройку раз migx-db, остальные — «обычный».
Виталий Батушев
28 октября 2012, 02:57
0
Ну можно и это. Я ж не в курсе, что конкретно Вам надо. Можете, просто, скажем, сделать TV с полями, где одно это цвет товара, а другое количество товара этого цвета. При продаже товара с этим цветом — меняете количество. Когда количество равно нулю, при генерации listbox-а просто игнорируете создание option этого цвета.
Николай
28 октября 2012, 01:55
0
просто к сожалению мануал по MIGX весьма скудный, и автор не описывает что для чего((
… ткните сюда ткните туда, вуаля вы получили счастье и код вообще без комментариев практически…

С кодом Василия несравнить
Николай
28 октября 2012, 01:52
0
нужно менять как раз не цену, а содержимое MIGX элемента в зависимости от количества товара на складе, включать или выключать цвет к примеру
Николай
28 октября 2012, 01:48
0
Дело то в том что вроде бы у бруно в MIGXdb заложен этот функционал, просто не описан насколько я понял сам класс migx наследует методы modx, а в конфигурации есть поле classname где указывается имя объекта, при этом в мануале есть такие строчки…
______________________________________________________________
Register the TVs for our processors (getlist,fields)

We need to register TVs to include them in the getlist- and fields-processors.
Todo so we need a new config-file under /core/components/migx/configs/

with the same name as our MIGX-configuration: childstutorial.config.inc.php (should allready be installed with the MIGX-package)
and this content:

/core/components/migx/configs/childstutorial.config.inc.php
1
2
3
<?php
$this->customconfigs['includeTVs'] = 1;
$this->customconfigs['includeTVList'] = 'price,images,categories';
___________________________________________________________________

Насколько я понял после этого к переменным

можно обращаться как то так myClass->setTVValue(«prise»,$prise);

просто если это так то зачем делать велосипед… тем более не факт, что он выйдет лучше ))
Виталий Батушев
28 октября 2012, 00:08
0
Вы ошибаетесь на счет MIGX. MIGX не связывает TV, а как исключительно верно указал Евгений Дурягин, использует их для указания на то, как их рендерить в форме ресурса. Значение же самого TV типа MIGX — это JSON-строка. Я бы не стал заморачиваться на MIGXdb для создания TV для товара, для этого подойдет «обычный» TV типа migx. Изменять цену можно с помощью msGetPrice. Пишете там функцию, которая распарсивает значение вашего TV типа MIGX и изменяет цену согласно этому значению. Как-то так.
Евгений Дурягин
27 октября 2012, 13:56
0
В MIGXdb вы же сами таблицу описываете и определяете какие в ней поля должны быть.
Вот и обращайтесь к этой таблице как и к любой другой, через xPDO.
А TV используется только для отрисовки значение поля.