Diferencia entre revisiones de «Desarrollador FAQ»

De MoodleDocs
mSin resumen de edición
 
m (estructua)
 
(No se muestran 12 ediciones intermedias de 6 usuarios)
Línea 1: Línea 1:
{{Pendiente de traducir}}
{{FAQ}}
{{FAQ}}


==Help for new coders==
==Ayuda para nuevos codificadores==


===Where can "newbies" to Moodle get help?===
===Dónde pueden los novatos de Moodle obtener ayuda?===


The [http://moodle.org/mod/forum/view.php?f=33 General developer forum]! Feel free to ask any question, no matter how basic or advanced. Many people ask different levels of question every day, and the community is generally welcoming and quick to respond.
En los foros de desarrolladores:


==Moodle's database==
[http://moodle.org/mod/forum/view.php?f=33 Foro General de desarrolladores (Inglés) ]!


===Where can I see a schema for the structure of the Moodle database?===
[http://moodle.org/mod/forum/view.php?f=110 Foro Cosas de desarrolladores (Castellano) ]!


When installing Moodle, the database tables are generated and updated by various db-handling scripts located in various places. There is no canonical schema representation, although the [[Coding#Database_structures | coding guidelines for database structure]] give an outline of the general approach.
Siéntase libre de realizar cualquier pregunta, no importa que tan básica o avanzada sea. Muchas personas hacen diferentes niveles de preguntas todos los días, y la comunidad da la bienvenida y responde rápido.


The reason that the database information isn't stored in one place is because of Moodle's '''modular structure'''. Each activity module, for example, comes as a folder with script files inside. If the module needs to store information in the database, it must include scripts in a "db" subfolder which define and update the database structure.
==La base de datos de Moodle==


==How to get/set information when writing new Moodle code==
===Donde puedo ver un esquema de la estructura de la base de datos del Moodle?===


===How do I find out the currently-logged-on user?===
Al instalar Moodle, las tablas de la base de datos son generadas y actualizadas por varios archivos script de manejo de base de datos ubicados en varios lugares. No existe una representacion esquemática canónico, aunque [[:en:Coding#Database_structures | coding guidelines for database structure]] delínea una aproximación general.


The global object $USER, which contains the numeric $USER->id among other things.
La '''estructura modular''' del Moodle es la razón por la cual la información de la base de datos no esta almacenada en un único lugar.


===How do I find out the current course?===
Por ejemplo: cada módulo de actividad viene como una carpeta que incluye archivos script. Si el módulo requiere almacenar informacion en la base de datos, deberá incluir los archivos script que definen y actualizan la estructura de la base de datos en una subcarpeta llamada "db".


...
==Cómo leo/fijo información cuando escribo nuevo código de Moodle?==


===How do I insert/retrieve records in the database, without creating my own database connections?===


Always use the "datalib" functions, such as insert_record() or get_record(). This helps with database abstraction (e.g. running on either MySQL or Postgres) as well as maintaining a single database connection. Moodle uses ADODB for database abstraction.
===Cómo encuentro el usuario actualmente logueado?===
Dentro del objeto global $USER está entre otros el código numérico $USER->id


Look at [http://moodle.sourceforge.net/dhawes-phpdoc/moodlecore/_lib_datalib_php.html the documentation for datalib.php] for the list of functions and details of use.
===Cómo encuentro el curso actual?===
Dentro del objeto global $COURSE, está el código numérico $COURSE->id


===How do I get/set configuration settings?===
===Cómo agrego/recupero registros en en la base de datos sin crear mis propias conexiones de base de datos?===


To get config values you would typically access the global $CFG object directly, which is automatically created by the core Moodle scripts. To set these "main" config values use set_config($name, $value). The values are stored in the Moodle "config" database table, but these functions take care of cacheing on your behalf, so you should always use these rather than fetching the records directly.
Siempre usa las funciones "datalib", como insert_record() o get_record(). Esto ayuda con la abstracción de la base de datos.
(Por ejemplo: ejecutar tanto en MySQL como o Postgres) como también mantener una única conección de base de datos. Moodle usa ADODB para lograr la abstracción de la base de datos.


There is also a second table of config settings specifically for plugins ("config_plugin"). These are not automatically loaded into the $CFG object, so to fetch these you would use get_config($plugin, $name). To set them use set_config($name, $value, $plugin).
Mirá un listado de las funciones y un detalle de como usarlas en:
[http://moodle.sourceforge.net/dhawes-phpdoc/moodlecore/_lib_datalib_php.html the documentation for datalib.php]


===Cómo leo/fijo los valores de la configuracion?===
Para leer los valores de configuración tipicamente accedés directamente al objeto global $CFG, el cual se genera automáticamente por los scripts de núcleo del Moodle.
Para fijar esos valores de configuración "principales" usa set_config($name, $value). Los valores se almacenan en la tabla "config" de la base de datos del Moodle, como dichas funciones manejan el catcheo de la información, debes usarlas siempre en lugar de recuperar los registros directamente.
Existe además una segunda tabla de configuración específica para plugins ("config_plugin"). Estas no son cargadas automaticamente en el objeto $CFG, por o cual para recuperarlas deberás usar get_config($plugin, $name). Para fijarlas usa set_config($name, $value, $plugin).


[[Category: Desarrollador]]
[[Category: Desarrollador]]

Revisión actual - 17:00 18 jul 2019


Ayuda para nuevos codificadores

Dónde pueden los novatos de Moodle obtener ayuda?

En los foros de desarrolladores:

Foro General de desarrolladores (Inglés) !

Foro Cosas de desarrolladores (Castellano) !

Siéntase libre de realizar cualquier pregunta, no importa que tan básica o avanzada sea. Muchas personas hacen diferentes niveles de preguntas todos los días, y la comunidad da la bienvenida y responde rápido.

La base de datos de Moodle

Donde puedo ver un esquema de la estructura de la base de datos del Moodle?

Al instalar Moodle, las tablas de la base de datos son generadas y actualizadas por varios archivos script de manejo de base de datos ubicados en varios lugares. No existe una representacion esquemática canónico, aunque coding guidelines for database structure delínea una aproximación general.

La estructura modular del Moodle es la razón por la cual la información de la base de datos no esta almacenada en un único lugar.

Por ejemplo: cada módulo de actividad viene como una carpeta que incluye archivos script. Si el módulo requiere almacenar informacion en la base de datos, deberá incluir los archivos script que definen y actualizan la estructura de la base de datos en una subcarpeta llamada "db".

Cómo leo/fijo información cuando escribo nuevo código de Moodle?

Cómo encuentro el usuario actualmente logueado?

Dentro del objeto global $USER está entre otros el código numérico $USER->id

Cómo encuentro el curso actual?

Dentro del objeto global $COURSE, está el código numérico $COURSE->id

Cómo agrego/recupero registros en en la base de datos sin crear mis propias conexiones de base de datos?

Siempre usa las funciones "datalib", como insert_record() o get_record(). Esto ayuda con la abstracción de la base de datos. (Por ejemplo: ejecutar tanto en MySQL como o Postgres) como también mantener una única conección de base de datos. Moodle usa ADODB para lograr la abstracción de la base de datos.

Mirá un listado de las funciones y un detalle de como usarlas en: the documentation for datalib.php

Cómo leo/fijo los valores de la configuracion?

Para leer los valores de configuración tipicamente accedés directamente al objeto global $CFG, el cual se genera automáticamente por los scripts de núcleo del Moodle.

Para fijar esos valores de configuración "principales" usa set_config($name, $value). Los valores se almacenan en la tabla "config" de la base de datos del Moodle, como dichas funciones manejan el catcheo de la información, debes usarlas siempre en lugar de recuperar los registros directamente.

Existe además una segunda tabla de configuración específica para plugins ("config_plugin"). Estas no son cargadas automaticamente en el objeto $CFG, por o cual para recuperarlas deberás usar get_config($plugin, $name). Para fijarlas usa set_config($name, $value, $plugin).