Yii Framework Forum: [Risolto]Da Csqldataprovider A Cactivedataprovider - Yii Framework Forum

Jump to content

Page 1 of 1
  • You cannot start a new topic
  • You cannot reply to this topic

[Risolto]Da Csqldataprovider A Cactivedataprovider Rate Topic: -----

#1 User is offline   michele 

  • Standard Member
  • PipPip
  • Yii
  • Group: Members
  • Posts: 221
  • Joined: 02-August 12

Posted 24 November 2012 - 05:10 PM

Salve ragazzi ,

Ho un problema nel creare da un CSqlDataProvider un CActiveDataProvider ho provato in questa maniera:

   $sql="SELECT id_pratica,data_versamento,versamento,entrata,uscita,Attore,m_f_attore,m_f_convenuto,convenuto FROM spese INNER JOIN prefixarchivio_pratiche ON spese.id_pratica = prefixarchivio_pratiche.ID WHERE prefixarchivio_pratiche.ID=".$id;
      
        $result=new CSqlDataProvider($sql);        
        
        $model->populateRecord($result,true);      
        
        $activedata= new CActiveDataProvider($model);


ma non mi recupera i valori, ovvero se vado se faccio il var_dump di result mi ritorna un'array vuoto, ma se la query la provo sul db funziona perfettamente
0

#2 User is offline   michele 

  • Standard Member
  • PipPip
  • Yii
  • Group: Members
  • Posts: 221
  • Joined: 02-August 12

Posted 25 November 2012 - 05:32 AM

Visto che non riuscivo a capire l'errore ho provato a fondore due array e a passare al widget un Carraydataprovider cosi:

$criteria2 = new CDbCriteria();
        $criteria2->condition = 'id_pratica = :_id';
        $criteria2->params = array(':_id'=>$id); 

 $criteria1 = new CDbCriteria();
        $criteria1->condition = 'ID= :_id';
        $criteria1->select = 'm_f_attore,m_f_convenuto,Attore,convenuto';
        $criteria1->params = array(':_id'=>$id);       

        
        $activedata2= PrefixarchivioPratiche::model()->findAll($criteria1);
        $activedata=  Spese::model()->findAll($criteria2);
        
        
        $activedata3=new CArrayDataProvider(array_merge($activedata2, $activedata));


ma il widget mi dice che i campi che vado a richiamare nel columns non sono presenti nel model ovvero spese.m_f_attore etc.
0

#3 User is offline   Alichin 

  • Junior Member
  • Pip
  • Yii
  • Group: Members
  • Posts: 58
  • Joined: 03-August 10

Posted 25 November 2012 - 04:28 PM

View Postmichele, on 24 November 2012 - 05:10 PM, said:

Salve ragazzi ,

Ho un problema nel creare da un CSqlDataProvider un CActiveDataProvider ho provato in questa maniera:

   $sql="SELECT id_pratica,data_versamento,versamento,entrata,uscita,Attore,m_f_attore,m_f_convenuto,convenuto FROM spese INNER JOIN prefixarchivio_pratiche ON spese.id_pratica = prefixarchivio_pratiche.ID WHERE prefixarchivio_pratiche.ID=".$id;
      
        $result=new CSqlDataProvider($sql);        
        
        $model->populateRecord($result,true);      
        
        $activedata= new CActiveDataProvider($model);


ma non mi recupera i valori, ovvero se vado se faccio il var_dump di result mi ritorna un'array vuoto, ma se la query la provo sul db funziona perfettamente


Prova con:


$model->populateRecord($result->getData(),true);
0

#4 User is offline   michele 

  • Standard Member
  • PipPip
  • Yii
  • Group: Members
  • Posts: 221
  • Joined: 02-August 12

Posted 26 November 2012 - 05:19 AM

grazie alinchin, ho risolto in questa maniera :

$result= new CSqlDataProvider($sql);


passando la variabile $result al widget funziona perfettamente
0

Share this topic:


Page 1 of 1
  • You cannot start a new topic
  • You cannot reply to this topic

1 User(s) are reading this topic
0 members, 1 guests, 0 anonymous users