Remove duplicate rules in hooks-and-api.md
- FK naming: keep detail in Gotchas, reference from Reglas importantes - CmsApi.hook JS: keep callback+Promise in CmsApi section, reference from Cómo Llamar Hooks - cms_uploads INSERT: keep full example in Uploads desde Hooks, reference from Gotchas Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
This commit is contained in:
@@ -75,11 +75,9 @@ Si `save_module` crea un directorio `modulos/auth_signup/hook.php`, este interce
|
|||||||
<p>{{ resultado.message }}</p>
|
<p>{{ resultado.message }}</p>
|
||||||
```
|
```
|
||||||
|
|
||||||
**Desde JavaScript:**
|
**Desde JavaScript:** (ver [CmsApi JS](#cmsapi-javascript--client-side) para callback + Promise)
|
||||||
```js
|
```js
|
||||||
CmsApi.hook('/hooks/mimodulo/', {param1: 100, param2: 'texto'}, (data) => {
|
CmsApi.hook('/hooks/mimodulo/', {param1: 100, param2: 'texto'}).then(res => console.log(res));
|
||||||
console.log(data.message);
|
|
||||||
});
|
|
||||||
```
|
```
|
||||||
|
|
||||||
**Desde otro Hook PHP:**
|
**Desde otro Hook PHP:**
|
||||||
@@ -190,7 +188,7 @@ CmsApi::delete('productos',
|
|||||||
|
|
||||||
- Nombres de tabla **sin** prefijo `cms_`
|
- Nombres de tabla **sin** prefijo `cms_`
|
||||||
- Primary key siempre es `num`, nunca `id`
|
- Primary key siempre es `num`, nunca `id`
|
||||||
- Foreign keys: el nombre es **exactamente** el definido en el schema (`.ini.php`). A veces es `categoria_num`, a veces `categoria`. Siempre consultar el schema antes de asumir
|
- Foreign keys: consultar siempre el schema (ver [Gotchas de BD](#gotchas-de-base-de-datos))
|
||||||
- Upload fields: no se manejan via insert/update
|
- Upload fields: no se manejan via insert/update
|
||||||
- Operadores: `=`, `!=`, `>`, `>=`, `<`, `<=`, `LIKE`, `IN`
|
- Operadores: `=`, `!=`, `>`, `>=`, `<`, `<=`, `LIKE`, `IN`
|
||||||
- **Traducción en PHP:** Usar `t_var()` para todo texto visible al usuario:
|
- **Traducción en PHP:** Usar `t_var()` para todo texto visible al usuario:
|
||||||
@@ -477,12 +475,7 @@ Las tablas `category` generan `name` automáticamente como campo de navegación.
|
|||||||
Al crear tablas o campos, usar `menuOrder` / `order` alto (99+) para que aparezcan al final del listado admin sin alterar el orden existente.
|
Al crear tablas o campos, usar `menuOrder` / `order` alto (99+) para que aparezcan al final del listado admin sin alterar el orden existente.
|
||||||
|
|
||||||
### `cms_uploads` tiene esquema diferente
|
### `cms_uploads` tiene esquema diferente
|
||||||
La tabla usa `createdTime` (no `createdDate`). No tiene `createdByUserNum`, `updatedDate`, ni `updatedByUserNum`. Para insertar un upload manualmente:
|
La tabla usa `createdTime` (no `createdDate`). No tiene `createdByUserNum`, `updatedDate`, ni `updatedByUserNum`. Ver [Uploads desde Hooks](#uploads-desde-hooks) para el ejemplo completo de INSERT.
|
||||||
```php
|
|
||||||
global $TABLE_PREFIX;
|
|
||||||
$sql = "INSERT INTO ".$TABLE_PREFIX."uploads (createdTime, tableName, recordNum, fieldName, urlPath, `order`)
|
|
||||||
VALUES (NOW(), 'productos', $num, 'foto', '$urlPath', $nextOrder)";
|
|
||||||
```
|
|
||||||
|
|
||||||
### Upload fields en PHP
|
### Upload fields en PHP
|
||||||
Incluso con una sola imagen, los uploads son arrays:
|
Incluso con una sola imagen, los uploads son arrays:
|
||||||
|
|||||||
Reference in New Issue
Block a user