Location: PHPKode > projects > DIY Blog > diy-blog/lib/propel/docs/es/user_guide/book/chapters/appendices/AppendixC-MapBuilders.html
<!--
-File         $Id: AppendixC-MapBuilders.html,v 1.1 2004/07/08 01:17:06 hlellelid Exp $
-License      GNU FDL (http://www.gnu.org/copyleft/fdl.html)
-Copyright    2003, Propel project
-Author       Hans Lellelid, hide@address.com
-->
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/2000/REC-xhtml1-20000126/DTD/xhtml1-strict.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
  <title>Propel Guide</title> 
  <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
  <link rel="Stylesheet" rev="Stylesheet" href="../../css/Documentation.css" type="text/css" media="All" charset="iso-8859-1" />
</head>
<body>
<h1>Apendice C - Usando clases MapBuilder(constructoras de mapas)</h1>
<p>Cuando Propel genera el modelo objeto para su proyecto, &eacute;l tambi&eacute;n genera clases MapBuilder 
  que son clases &quot;estaticas&quot; que representan la estructura de su base de datos. 
  Estas clases son usadas para determinar(por ejemplo), que columnas son llaves primarias, 
  llaves foraneass, etc. a nivel de ejecuci&oacute;n sin requerir ninguna operaci&oacute;n de metadato 
  en su base de datos.</p>
<p>Usted no necesite conocer nada sobre esas clases -- hasta que ellas son 
  utilizadas unicamente dentro de las clases base generadas peer y clases centrales de Propel  -- 
  ellas proveen una forma r&aacute;pida y poderosa para tomar metadatos para su base de datos.</p>
<pre>require_once("propel/Propel.php");

Propel::init("bookstore-conf.php");

require_once("Book.php");
require_once("Author.php");
require_once("Publisher.php");

require_once("propel/map/DatabaseMap.php");


try {

  $dbMap = Propel::getDatabaseMap("bookstore");

  $tables = $dbMap-&gt;getTables();

  foreach ($tables as $tableName =&gt; $table) {
    print "Table: $tableName\n";
    $columns = $table-&gt;getColumns();
    foreach ($columns as $column) {
      $creoleType = CreoleTypes::getCreoleName($column-&gt;getCreoleType());
      print "\tColumn: " . $column-&gt;getColumnName() . "\n";
      print "\t\tFQN: " . $column-&gt;getFullyQualifiedName() .  "\n";
      if ($column-&gt;isPrimaryKey()) {
        print "\t\tPrimary Key: true\n";
      }
      print "\t\tSize: " . $column-&gt;getSize() . "\n";
      print "\t\tType: " . $column-&gt;getType() . "\n";
      print "\t\tCreole Type: " . $creoleType . "\n";
    }
  }


} catch (Exception $e) {
  die("Exception: " . $e);
}</pre>
</body>
</html>
Return current item: DIY Blog