Que tal chavos, soy de México, me llamo Luis.

Bueno, espero poder explicarles mi problema:
Tengo una pagina que yo no desarrolle, en cakephp, pero me pidieron que le
hiciera unas modificacion.
Que hasta esto, he estado batallando para realizar dichas modifcaciones por
no conocer el cakephp, pro este no es el problema, xq ya estan las
modificacion, eran sencillas. La bronca es, que al parecer esta mal diseñada
la base de datos, las relaciones basicamente, es lo que creo. Por que, al
subir la base de datos tal cual esta en linea, funciona perfectamente al dar
de alta la información, pro ya que la quiero dejar lista para que siga en
linea y vacio los datos de las tablas, ohhhmi sorpresa, de q ocurre un error
"SQL Error: 1062: Duplicate entry '8' for key 1". Si tal vez, m van a decir
q estoy duplicando una un id primario o key, eso ya lo se, pro como mecione
arriba, no conozco cakephp ni al 50% como para saber dnd puedo meterle mano,
me explico, x eso pido su ayuda. Ya tengo varios dias, tratando de entender
y/o buscando alguna llave q me de o hacerq a la solucion, me dicen q pueden
ser las relaciones en las tablas, pro por que con los mismodatos de la otra
base de datos que esta en linea si funciona?

Bueno espero haberme explicado, y diganme que es lo quenecesitan para poder
ayudarme....

les dejo el model que se usa para dar de alta la información, si necesitan
mas infomacion, abajo enlisto mis emails!!! de antemano gracias!!
<?php
class Empresa extends AppModel {

    var $name = 'Empresa';
    var $validate = array(
        "paquete_id"=>array('rule'=>'validatePaqueteId','message'=>'Debe
seleccionar un paquete'),
        "title"=>array('notEmpty'),
        "direccion"=>array('notEmpty'),
        "colonia"=>array('notEmpty'),
        "ciudade_id"=>array('numeric'),
        "cp_id"=>array('numeric'),
        "telefono"=>array('notEmpty'),

    );
    var $hasMany = array(
        'Sucursale' => array(
            'className' => 'Sucursale',
            'foreignKey' => 'empresa_id',
            'conditions' => '',
            'fields' => '',
            'order' => '',
            'limit' => '',
            'offset' => '',
            'dependent' => true,
            'exclusive' => true,
            'finderQuery' => '',
            'counterQuery' => ''
        ),
        'Recibo' => array(
            'className' => 'Recibo',
            'foreignKey' => 'empresa_id',
            'conditions' => '',
            'fields' => '',
            'order' => '',
            'limit' => '',
            'offset' => '',
            'dependent' => true,
            'exclusive' => true,
            'finderQuery' => '',
            'counterQuery' => ''
        )
    );
    //The Associations below have been created with all possible keys, those
that are not needed can be removed
    var $hasAndBelongsToMany = array(
        'CapacidadEnvio' => array(
            'className' => 'CapacidadEnvio',
            'joinTable' => 'capacidad_envios_empresas',
            'foreignKey' => 'empresa_id',
            'associationForeignKey' => 'capacidad_envio_id',
            'conditions' => '',
            'fields' => '',
            'order' => '',
            'limit' => '',
            'offset' => '',
            'unique' => 'true',
            'finderQuery' => '',
            'deleteQuery' => '',
            'insertQuery' => ''
        ),
        'FormaPago' => array(
            'className' => 'FormaPago',
            'joinTable' => 'forma_pagos_empresas',
            'foreignKey' => 'empresa_id',
            'associationForeignKey' => 'forma_pago_id',
            'conditions' => '',
            'fields' => '',
            'order' => '',
            'limit' => '',
            'offset' => '',
            'unique' => 'true',
            'finderQuery' => '',
            'deleteQuery' => '',
            'insertQuery' => ''
        )
    );
    var $belongsTo = array(
        'Status' => array(
            'className' => 'Status',
            'foreignKey' => 'status_id',
            'conditions' => 'Status.id=1',
            'fields' => '',
            'order' => '',
            'counterCache' => ''
        ),
        'Usuario' => array(
            'className' => 'Usuario',
            'foreignKey' => 'usuario_id',
            'conditions' => '',
            'fields' => '',
            'order' => '',
            'counterCache' => ''
        ),
        'Paquete' => array(
            'className' => 'Paquete',
            'foreignKey' => 'paquete_id',
            'conditions' => '',
            'fields' => '',
            'order' => '',
            'counterCache' => ''
        ),
        'Ciudade' => array(
            'className' => 'Ciudade',
            'foreignKey' => 'ciudade_id',
            'conditions' => '',
            'fields' => '',
            'order' => '',
            'counterCache' => ''
        ),
        'Estado' => array(
            'className' => 'Estado',
            'foreignKey' => 'estado_id',
            'conditions' => '',
            'fields' => '',
            'order' => '',
            'counterCache' => ''
        ),
        'Cp' => array(
            'className' => 'Cp',
            'foreignKey' => 'cp_id',
            'conditions' => '',
            'fields' => '',
            'order' => '',
            'counterCache' => ''
        ),
        'Banner' => array(
            'className' => 'Banner',
            'foreignKey' => 'banner_id',
            'conditions' =>'',
            'fields' => '',
            'order' => '',
            'counterCache' => ''
        ),
        'Categoria' => array(
            'className' => 'Categoria',
            'foreignKey' => 'categoria_id',
            'conditions' =>'',
            'fields' => '',
            'order' => '',
            'counterCache' => ''
        )
    );
    function validateCp($value,$params=array()){
//         return true;
        return
is_array($this->Cp->find('all',array('conditions'=>array("Cp.ciudade_id"=>$this->data['Empresa']['ciudade_id'],"Cp.id"=>$this->data['Empresa']['cp_id']))));
    }
    function validatePaqueteId($value,$params=array()){
        return $this->data['Empresa']['paquete_id']>0;
    }
}
?>


-- 
Luis Galvan
Ing. Sistemas Computacionales
Cd. Juarez
Movil: (656) 133-0198
e-mail: lcgal...@gmail.com
im: laysha...@hotmail.com

-- 
Has recibido este mensaje porque estás suscrito al grupo "CakePHP-es" de Grupos 
de Google.
Para publicar una entrada en este grupo, envía un correo electrónico a 
cakephp...@googlegroups.com.
Para anular tu suscripción a este grupo, envía un correo electrónico a 
cakephp-es+unsubscr...@googlegroups.com
Para tener acceso a más opciones, visita el grupo en 
http://groups.google.com/group/cakephp-es?hl=es.

Responder a