mejora mia
This commit is contained in:
@@ -117,35 +117,30 @@ API server-side para operaciones de base de datos. Disponible en todos los hooks
|
||||
|
||||
```php
|
||||
// Todos los registros
|
||||
$products = CmsApi::get('productos');
|
||||
$products = CmsApi::get("productos");
|
||||
|
||||
// Con condición WHERE
|
||||
$active = CmsApi::get('productos', ['active' => 1]);
|
||||
// Con condición WHERE en string
|
||||
$active = CmsApi::get("productos", "active=1");
|
||||
|
||||
// Con orden y límite
|
||||
$latest = CmsApi::get('noticias', [], 'fecha DESC', 5);
|
||||
$latest = CmsApi::get("noticias", "", "fecha DESC", 5);
|
||||
|
||||
// Con condición string
|
||||
$activos = CmsApi::get('productos', 'activo=1');
|
||||
$activos = CmsApi::get("productos", "activo=1");
|
||||
|
||||
// Condición compleja como array
|
||||
$caros = CmsApi::get('productos', [
|
||||
["column" => "precio", "operator" => ">", "value" => 100]
|
||||
]);
|
||||
// Condición compleja
|
||||
$caros = CmsApi::get("productos", "precio > 100");
|
||||
|
||||
// Múltiples condiciones (AND)
|
||||
$resultados = CmsApi::get('productos', [
|
||||
["column" => "activo", "operator" => "=", "value" => 1],
|
||||
["column" => "stock", "operator" => ">", "value" => 0]
|
||||
]);
|
||||
$resultados = CmsApi::get("productos", "activo = 1 AND stock > 0");
|
||||
|
||||
// Con operadores
|
||||
$expensive = CmsApi::get('productos', ['precio' => ['>=' => 100]]);
|
||||
$search = CmsApi::get('productos', ['nombre' => ['LIKE' => '%keyword%']]);
|
||||
$inList = CmsApi::get('productos', ['categoria_num' => ['IN' => [1, 2, 3]]]);
|
||||
$expensive = CmsApi::get("productos", "precio >= 100");
|
||||
$search = CmsApi::get("productos", "nombre LIKE '%keyword%'");
|
||||
$inList = CmsApi::get("productos", "categoria_num IN (1, 2, 3)");
|
||||
|
||||
// Con opciones
|
||||
$datos = CmsApi::get('productos', '', '', '', [
|
||||
$datos = CmsApi::get("productos", "", "", "", [
|
||||
'translates' => true,
|
||||
'uploads' => true,
|
||||
'relations' => true,
|
||||
@@ -237,36 +232,7 @@ Para búsquedas y lecturas habituales, prioriza:
|
||||
3. SQL manual solo si de verdad no hay alternativa razonable
|
||||
|
||||
### `CocoDB::get($table, $where, $order, $limit, $options)`
|
||||
|
||||
```php
|
||||
// Básico
|
||||
$records = CocoDB::get('productos', ['activo' => 1], 'orden ASC', 10);
|
||||
|
||||
// Where con operadores avanzados
|
||||
$records = CocoDB::get('productos', [
|
||||
['column' => 'precio', 'value' => 100, 'operator' => '>='],
|
||||
['column' => 'categoria_num', 'value' => [1, 2, 3], 'operator' => 'IN'],
|
||||
]);
|
||||
|
||||
// Condiciones OR
|
||||
$records = CocoDB::get('productos', [
|
||||
['column' => 'nombre', 'value' => '%keyword%', 'operator' => 'LIKE'],
|
||||
['column' => 'descripcion', 'value' => '%keyword%', 'operator' => 'LIKE', 'or' => true],
|
||||
]);
|
||||
|
||||
// NOT
|
||||
$records = CocoDB::get('productos', [
|
||||
['column' => 'estado', 'value' => 'borrador', 'operator' => '=', 'not' => true],
|
||||
]);
|
||||
|
||||
// IS NULL
|
||||
$records = CocoDB::get('productos', [
|
||||
['column' => 'fecha_baja', 'value' => '', 'operator' => 'IS NULL'],
|
||||
]);
|
||||
|
||||
// Limit con offset
|
||||
$records = CocoDB::get('productos', [], 'num DESC', ['limit' => 10, 'offset' => 20]);
|
||||
```
|
||||
### Funcionalidad exactamente igual a CmsApi::get ( ver referencia CmsApi::get )
|
||||
|
||||
#### Opciones de `get()`
|
||||
|
||||
@@ -436,7 +402,7 @@ En este ejemplo, el endpoint usa `calcular_precio` porque el archivo vive en:
|
||||
```php
|
||||
<?php
|
||||
// hook.php del módulo "procesar_compra"
|
||||
$producto = CmsApi::get('productos', "num=$producto_id");
|
||||
$producto = CmsApi::get("productos", "num=" . $producto_id);
|
||||
|
||||
if (empty($producto)) {
|
||||
return ["success" => false, "message" => "Producto no encontrado"];
|
||||
@@ -454,7 +420,7 @@ CmsApi::insert('ventas', [[
|
||||
]], [], ['return_last_id' => true]);
|
||||
|
||||
// Actualizar stock
|
||||
$stock = CmsApi::get('stocks', "producto_num=$producto_id");
|
||||
$stock = CmsApi::get("stocks", "producto_num=" . $producto_id);
|
||||
if (!empty($stock)) {
|
||||
CmsApi::update('stocks',
|
||||
["cantidad" => $stock[0]['cantidad'] - $cantidad],
|
||||
|
||||
Reference in New Issue
Block a user