Примеры запросов: различия между версиями
Admin (обсуждение | вклад) (Новая страница: «Исправление bucket на basket в таблице заказов: <pre> <?php use \Core\Pattern\PageDefault; $factory = new PageDefault(); $factory->…») |
Admin (обсуждение | вклад) Нет описания правки |
||
| (не показано 6 промежуточных версий этого же участника) | |||
| Строка 1: | Строка 1: | ||
Bind: | |||
<pre> | |||
Bind::Q('GET request:home', 'NEWS::getNews'); | |||
Bind::Q('GET request:tv', 'NEWS::getNewsTV'); | |||
Bind::Q('Page/Ready ALIAS:news', 'NEWS::getRubricPosts'); | |||
Bind::Q('Page/Ready GROUP:post', 'NEWS::getPostForPublish'); | |||
Bind::Q('ApiRequest getNews', 'NEWS::Api_getPosts'); | |||
Bind::Q('ApiRequest postNotify', 'NEWS::Api_Notify_Post'); | |||
Bind::Q('DirectRequest direct:getNews', 'NEWS::Direct_getNews'); | |||
Bind::Q("OnAfterCatalogUpdate", 'TestCatalog::get2'); | |||
// get input json example: | |||
Bind::Q('JSON request:/direct/test1', 'SitemapHandler::test'); | |||
public static function test() | |||
{ | |||
$data = \Core\APP::getInput(); | |||
d($data); | |||
} | |||
</pre> | |||
Пример запроса с кэшированием | |||
<pre> | |||
if ($giftsDB = Cache::getCachedObject(self::$cacheLifetime, self::$cache_name)){ | |||
self::$giftsDB = $giftsDB; | |||
} else { | |||
$giftsDB = []; | |||
$factory = new self(); | |||
$all = $factory->getAllIn([ | |||
//'order' => 'ID' | |||
]); | |||
foreach ($all as $row) { | |||
$giftsDB[$row['ID']] = $row; | |||
} | |||
self::$giftsDB = $giftsDB; | |||
if (Cache::cacheObject( | |||
self::$cache_name, $giftsDB)) { | |||
return self::$giftsDB; | |||
} | |||
} | |||
</pre> | |||
Исправление bucket на basket в таблице заказов: | Исправление bucket на basket в таблице заказов: | ||
| Строка 20: | Строка 69: | ||
$factory->Edit($datum, $where, 1); | $factory->Edit($datum, $where, 1); | ||
} | } | ||
</pre> | |||
Транзакции (доступны с версии 1.8 - 816): | |||
<pre> | |||
DB::beginTransaction(); | |||
DB::query("INSERT INTO table1 (column1) VALUES ('value1')"); | |||
DB::query("UPDATE table2 SET column2 = 'value2' WHERE id = 1"); | |||
DB::commit(); | |||
</pre> | </pre> | ||
Текущая версия от 13:19, 30 июня 2026
Bind:
Bind::Q('GET request:home', 'NEWS::getNews');
Bind::Q('GET request:tv', 'NEWS::getNewsTV');
Bind::Q('Page/Ready ALIAS:news', 'NEWS::getRubricPosts');
Bind::Q('Page/Ready GROUP:post', 'NEWS::getPostForPublish');
Bind::Q('ApiRequest getNews', 'NEWS::Api_getPosts');
Bind::Q('ApiRequest postNotify', 'NEWS::Api_Notify_Post');
Bind::Q('DirectRequest direct:getNews', 'NEWS::Direct_getNews');
Bind::Q("OnAfterCatalogUpdate", 'TestCatalog::get2');
// get input json example:
Bind::Q('JSON request:/direct/test1', 'SitemapHandler::test');
public static function test()
{
$data = \Core\APP::getInput();
d($data);
}
Пример запроса с кэшированием
if ($giftsDB = Cache::getCachedObject(self::$cacheLifetime, self::$cache_name)){
self::$giftsDB = $giftsDB;
} else {
$giftsDB = [];
$factory = new self();
$all = $factory->getAllIn([
//'order' => 'ID'
]);
foreach ($all as $row) {
$giftsDB[$row['ID']] = $row;
}
self::$giftsDB = $giftsDB;
if (Cache::cacheObject(
self::$cache_name, $giftsDB)) {
return self::$giftsDB;
}
}
Исправление bucket на basket в таблице заказов:
<?php
use \Core\Pattern\PageDefault;
$factory = new PageDefault();
$factory->setTableName('orders');
$opt = array("CHECK_ALLOWED" => "N");
$data = $factory->getAllIn($opt);
foreach ($data as $key => $datum) {
$datum["ORDER_JSON"] = str_replace('bucket', 'basket', $datum["ORDER_JSON"]);
$where = array("ID" => $datum["ID"]);
unset($datum["ID"]);
if(!empty($datum["count"]))
unset($datum["count"]);
$factory->Edit($datum, $where, 1);
}
Транзакции (доступны с версии 1.8 - 816):
DB::beginTransaction();
DB::query("INSERT INTO table1 (column1) VALUES ('value1')");
DB::query("UPDATE table2 SET column2 = 'value2' WHERE id = 1");
DB::commit();