Créer un compte ou loggez-vous pour pouvoir ajouter, commenter et noter les snippets.

Navigation

Tags relatifs

my Symfony Plugins

Plugins demos


My bookmarks

Vous pouvez commenter/noter en utilisant le compte anonymous (mot de passe: anonymous)
You can comment/rate using the anonymous account (password: anonymous).

Snippets taggés : "custom import" Snippets taggés : "custom import"

[Propel] Faire une fonction custom de join - 165 view(s)

public static function doSelectJoinUserAndStateAndCountry(Criteria $c, $con = null) {
$c = clone $c;
 
if ($c->getDbName() == Propel::getDefaultDB()) {
$c->setDbName(self::DATABASE_NAME);
}
 
MemberPeer::addSelectColumns($c);
$startcol2 = (MemberPeer::NUM_COLUMNS - MemberPeer::NUM_LAZY_LOAD_COLUMNS) + 1;
 
UserPeer::addSelectColumns($c);
$startcol3 = $startcol2 + UserPeer::NUM_COLUMNS ;
 
CountryPeer::addSelectColumns($c);
$startcol4 = $startcol3 + CountryPeer::NUM_COLUMNS ;
 
StatePeer::addSelectColumns($c);
CountryPeer::addSelectColumns($c);
 
 
$c->addJoin(MemberPeer::USER_ID, UserPeer::ID);
$c->addJoin(MemberPeer::STATE_ID, StatePeer::ID);
$c->addJoin(MemberPeer::COUNTRY_ID, CountryPeer::ID);
 
 
$rs = BasePeer::doSelect($c, $con);
$results = array();
 
while($rs->next())
{
$omClass = MemberPeer::getOMClass();
 
$cls = Propel::import($omClass);
$obj1 = new $cls();
$obj1->hydrate($rs);
 
$omClass = UserPeer::getOMClass();
 
$cls = Propel::import($omClass);
$obj2 = new $cls();
$obj2->hydrate($rs, $startcol2);
 
$omClass = StatePeer::getOMClass();
 
$cls = Propel::import($omClass);
$obj3 = new $cls();
$obj3->hydrate($rs, $startcol3);
 
$omClass = CountryPeer::getOMClass();
 
$cls = Propel::import($omClass);
$obj4 = new $cls();
$obj4->hydrate($rs, $startcol4);
 
$obj1->setUser($obj2);
$obj1->setState($obj3);
$obj1->setState($obj4);
$results[] = $obj1;
}
 
return $results;
}
 
par COil le 2008-09-29, taggé : custom  hydrate  import  join  mysql  propel 
(1 commentaire)
Debug toolbar