这个类如何知道要查询的表?

时间:2013-12-29 18:02:11

标签: php database postgresql pomm

http://pomm.coolkeums.org/documentation/manual-1.2#findwhere

  

可以直接使用它,因为我们在Map类中   Pomm知道在查询中使用哪些表和字段。

它说因为我们在Map类中Pomm知道要查询的表。它如何知道我想要查询的表?

1 个答案:

答案 0 :(得分:3)

来自您提供的链接

  

“Map类表示数据库中的结构并提供方法   使用此结构检索和保存数据。简而言之,一张桌子   或view =>一个地图类。“

这意味着它知道您要查询哪个表,因为您正在从与该表关联的地图类中调用findWhere()。

来自您在此处提供的链接的[Introspected tables]部分是一个示例Map Class:

object_name属性下面的代码中的

*指定与此地图类相关的表名。*

 abstract class StudentMap extends BaseObjectMap
 {
     public function initialize()
     {
         $this->object_class =  '\College\PublicSchema\Student';
         $this->object_name  =  'student';

         $this->addField('reference', 'char');
         $this->addField('first_name', 'varchar');
         $this->addField('last_name', 'varchar');
         $this->addField('birthdate', 'timestamp');
         $this->addField('level', 'smallint');
         $this->addField('exam_dates', 'timestamp[]');

         $this->pk_fields = array('reference');
     }
 }