Uchwycić moment…

menic’s devBlog

Archive for the 'Propel' Category

“Update pole = pole+1″ in propel == POSSIBLE

Dzis całkiem przypadkiem znalazłem rozwiazanie tego problemu. W koncu troche bardziej rozbudowali dokumentacje i sie znalazło :) A jak to zrobić? Bardzo prosto i logicznie:

PHP:
  1. $o = SubCategoryPeer::retrieveByPK( $this->getRequestParameter( 'sub_cat_id' ) );
  2. $o->setQuestionCount( ( $o->getQuestionCount() + 1 ) );
  3. $o->save();

4 comments

Propel jest blee

Na początku tak mi sie podobał. A im więcej go poznaje i używam, tym bardziej sie zniechęcam do niego :( Niby ułatwia prace, ale nie do końca. Brakuje kilku funkcji, albo coś nie działa. Np. Prosty UPDATE wielu wierszy trzeba zrobić tak:

PHP:
  1. $c = new Criteria();
  2. $c->add(AnswerPeer::QUESTION_ID, $this->getRequestParameter('id'));
  3. $this->objs = AnswerPeer::doSelect($c);
  4. foreach($this->objs AS $this->obj)
  5. {
  6. $this->obj->setIsDeleted(1);
  7. $this->obj->save();
  8. }

Przygotowana funkcja doUpdate jakoś nie za bardzo chce działać :|

2 comments

“Update pole = pole+1″ in propel == impossible

Najpierw strach... Co to w ogóle jest... Później poznawanie... zachwyt...A teraz rozczarowanie :/ Taki potężny zestaw narzędzi, a nie przygotowali nic do tak prostego zapytania:

UPDATE table SET pole=pole+1 WHERE pole='10'

Zamiast tego trzeba najpierw pobrać ręcznie wartość, a dopiero póżniej ją zUPDATEjtować :|

11 comments