• avatar Tohin
  • 0
Просто не судьба какая то.
При установке написало в консоль кучу ошибок…
Error 42S22 executing statement: Array ( [0] => 42S22 [1] => 1054 [2] => Unknown column 'modPluginEvent.name' in 'where clause' ) 
Error saving vehicle object of class modPluginEvent; criteria: Array ( [name] => )
Could not install related objects with locally owned keys for vehicle object of class modPlugin; criteria: Array ( [name] => DebugToolbar )
Успешно установлен пакет debugtoolbar-0.1-alpha
  • avatar Redjik
  • 0
Тебе куда их в админку или на фронт?
+ какая версия modx?

phpclub.ru/talk/threads/jqgridphp-%D1%82%D0%B0%D0%B1%D0%BB%D0%B8%D1%86%D1%8B-%D0%BD%D0%B0-ajax-%D0%B1%D0%B5%D0%B7-%D0%B3%D0%BE%D0%BB%D0%BE%D0%B2%D0%BD%D0%BE%D0%B9-%D0%B1%D0%BE%D0%BB%D0%B8.69132/

Делает парень, работающий толи в мамбе, толи в баду + насколько я знаю его тимлид.
  • avatar SSerg
  • 0
как минимум manager/media/
это не помогло, еще есть варианты ??
  • avatar danik
  • 1
Обновил плагин. Теперь патч modx устанавливается вместе с плагином. То есть теперь не нужно ничего делать руками. Исправил ошибку с TV, описанную Pathologic

Обязательно отписываемся о найденых ошибках — я должен все исправить перед отправкой патча в modx.
  • avatar Tohin
  • 0
Ничего толкового в выводе дебага не вижу…
Пойду скачаю modx.im/blog/addons/244.html
Это да. Практика лучшая учеба)
Не парься, сам научишься)
Знания добытые свои тяжким трудом усваиваются в разы надежнее и крепче!
  • avatar Tohin
  • 0
<?xml version="1.0" encoding="UTF-8"?>
<model package="test" baseClass="xPDOObject" platform="mysql" defaultEngine="MyISAM" version="1.1">

	<object class="Object" table="object" extends="xPDOObject"><param name="wmode" value="opaque"></param>
		<field key="id" dbtype="int" precision="11" phptype="integer" null="false" index="pk"  generated="native" />
		<field key="name" dbtype="varchar" precision="15" phptype="string" null="true" index="index" />
		<field key="property_id" dbtype="tinyint" precision="3" phptype="integer" null="false" default="0" index="index" />

		<index alias="PRIMARY" name="PRIMARY" primary="true" unique="true" type="BTREE" >
			<column key="id" length="" collation="A" null="false" />
		</index>

		<aggregate alias="obj_komments" class="Comments" local="id" foreign="Object_id" cardinality="many" owner="local" />
		<aggregate alias="obj_Property" class="Property" local="property_id" foreign="id" cardinality="one" owner="foreign" />
	</object>

	<object class="Property" table="Property" extends="xPDOObject"><param name="wmode" value="opaque"></param>
		<field key="Id" dbtype="tinyint" precision="3" phptype="integer" null="false" index="pk"  generated="native" />
		<field key="name" dbtype="varchar" precision="255" phptype="string" null="true" />
		<field key="value" dbtype="varchar" precision="255" phptype="string" null="true" />

		<index alias="PRIMARY" name="PRIMARY" primary="true" unique="true" type="BTREE" >
			<column key="Id" length="" collation="A" null="false" />
		</index>
		<aggregate alias="obj_Property" class="Object" local="id" foreign="type" cardinality="many" owner="local" />
	</object>
	

	<object class="Comments" table="Comments" extends="xPDOObject"><param name="wmode" value="opaque"></param>
		<field key="id" dbtype="int" precision="11" phptype="integer" null="false" index="pk"  generated="native" />
		<field key="Object_id" dbtype="mediumint" precision="9" phptype="integer" null="false" default="0" index="index" />
		<field key="value" dbtype="varchar" precision="255" phptype="string" null="true" />

		<index alias="PRIMARY" name="PRIMARY" primary="true" unique="true" type="BTREE" >
			<column key="Id" length="" collation="A" null="false" />
		</index>
		<aggregate alias="obj_komments" class="Object" local="Object_id" foreign="id" cardinality="one" owner="foreign" />
	</object>


</model>
а… о…
у…
ыыыы

Discuss — это то что я думаю? О.о Полноценный родной форум для рево?!
Связь в таблице: Object.property_id — Property.id
Object.id — Comments.Object_id
схему покажите, так как argnist отметил, связи бывают разные.
  • avatar Tohin
  • 0
Ничего если я тут сам с собой пообщаюсь, чтоб мысль не потерять?
Итак кусок из xpdovalidator.class.php
if ($result === false) {
            $this->validator->addMessage($this->field, $this->name, $this->message);
        }

Что как бы намекает на правильность второго варианта. А значит мой запрос валидацию проходит нормально. Как намекнуть разработчикам на ошибку в документации?

Где копать дальше? Попробую сейчас конечно осознать что при $xpdo->save происходит…
  • avatar Tohin
  • 0
А в другом месте RTFM читаю совершенно противоположное:
$validator = $obj->getValidator();
if ($validator->validate() == false) {
    $messages = $validator->getMessages();
    foreach ($messages as $errorMsg) {
        $output .= $errorMsg['message'];
    }
}

Разница:
>>if ($validator->validate())
>>if ($validator->validate() == false)

В обоих случаях дальше идет обработка ошибки. Так что же возвращает ->getValidator()->validate() в случае успеха???

Ссылки:
rtfm.modx.com/display/xPDO20/xPDOMaxValueValidationRule
rtfm.modx.com/display/xPDO20/xPDOValidator.validate
  • avatar ad-man
  • 0
Хороший сниплет очень понравилась возможность, что бы голосовали только авторизованные люди и сразу возникла проблема не знаю с чем это связанно, но пишит так что как будто человек не авторизован, хотя он сто-пудова авторизован у меня пару кодов которые работают только тогда когда человек авторизован, естественно если под аккаунтом администратора, то видит меня что я авторизован
  • avatar Ronef
  • 0
Спасибо за ссылки, обязательно внимательно всё прочту.
А зачем Тиму все это? И вообще, почитайте сначала тему forums.modx.com/thread/?thread=74766 и статью modx.com/blog/2012/04/19/bringing-evolution-development-back-to-life/ там обсуждались эти все вопросы. Поэтому форк родился не просто потому, что MODx OpenSource, а потому, что это все. Нет больше у Evo поддержки со стороны разработчиков MODX.
  • avatar Ronef
  • 0
Им надо просто взять Тима в свою команду и сделать ответственным по Evo. Я думаю, они никуда не денутся, если достаточно большое количество пользователей попросит их об этом.
Уж послал, так послал…
Ваш спец находиться здесь
  • avatar Tohin
  • 0
Да и шут с ней… с проверкой.
Пишу:

$Object = $modx->newObject('Object', array('property_id' =>5));
if ($Object->save == false) {echo 'Ошибка сохранения данных! ;}

ну и естественно, раз ошибка предусмотрена, она и вылетает…
А как узнать чем она вызвана? попробовал
$modx->setDebug(true);
все обрывается на строчке
[2012-12-24 20:04:58] (DEBUG @ /test.php) Validator class executed, result = 1
Что судя по rtfm
$validator = $obj->getValidator();
if ($validator->validate()){
   echo 'Errors occurred!';
}

говорит о наличии ошибки. пока не понял как вывести само сообщение об ошибке
  • avatar danik
  • 0
Я кстати немного экспериментировал на днях. Пытался заставить работать несколько разных инсталляций modx на одном «ядре», то-есть с одной общей папкой core.

Почти получилось. Но необходимы некоторые правки в ядре и расширениях, я еще поработаю над этим. Проблема в папке core/components, этот путь во многих местах прописан жестко, и только в одном месте идет обращение сначала к опции components_path.

Одна из «особенностей» такой схемы — общий набор загруженных (еще не установленных) пакетов, так как папка core/packages общая. А значит возможно могут возникнуть коллизии.