parámetro $schema, clase ActiveRecord

edited septiembre 2007 in Bugs y Problemas
El problema es que el método, find_first() verifica si existe un
atributo llamado "schema" (línea 488 del archivo active_record.php),
esto llama al método __get de la clase "ActiveRecord"; y es este
método el que manda el error; ya que se quiere leer una propiedad
"schema", pero ésta no existe, la solución (por el momento) es agregar
public $schema; en la sección de atributos (en las primeras líneas de
la clase)
Esto me pasó con la versión 0.4.7

El código del método find_first, es:


public function find_first($what=''){
if(!$this->dumped) {
$this->dump();
}
if(!$this->db){
$this->db = db::raw_connect();
}
$this->db->debug = $this->debug;
$this->db->logger = $this->logger;
$params = get_params(func_get_args());
$select = "SELECT ";
if(isset($params)){
$select.= ActiveRecord::sql_sanizite($params);
} else {
$select.= join(",", $this->fields);
}
if($this->schema){
$select.= " FROM {$this->schema}.{$this->source}";
} else {
$select.= " FROM {$this->source}";
}
$select.= $this->convert_params_to_sql($params);
$resp = false;
if(!isset($params)){
$select.=$this->limit(1);
}
$result = $this->db->fetch_one($select);
if($result){
$this->dump_result_self($result);
$resp = $this->dump_result($result);
}
return $resp;
}


y el problema se da en la parte:

if($this->schema){
$select.= " FROM {$this->schema}.{$this->source}";
} else {
$select.= " FROM {$this->source}";
}
porque no existe el atributo $schema en la clase;

Comentarios

  • Esta raro a mi nunca de ha dado ese problema y tengo tiempo trabajando con PostgreSQL incluso con versiones anteriores que existian tantas mejoras en ActiveRecord pero de verdad que no se comparta asi conmigo...

    Otra cosa amigo pasa el codigo que tiene el metodo find_first()
  • edited 11:46
    Pues si la verdad que está raro, pero si revisás en el grupo de kumbia que hay en google, a alguien más le pasó, el mensaje de él es "problemas al insertar registro"
  • Hay que definir la propiedad $schema en forms/db/active_record.php para que no pase esto.

    Saludos
  • edited 11:46
    eso fue lo que hice, pero como ya lo dijiste vos, supongo que ya es oficial!!! Gracias; estoy revisando el framework y tiene buena pinta, felicidades a todos los desarrolladores
Sign In or Register to comment.