Yii Framework Forum: Eseménykezelés - Yii Framework Forum

Jump to content

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

Eseménykezelés Rate Topic: -----

#1 User is offline   Attila 

  • Newbie
  • Yii
  • Group: Members
  • Posts: 4
  • Joined: 23-April 13

Posted 13 May 2014 - 09:15 AM

Sziasztok!

Az eseménykezeléssel kapcsolatosan szeretnék segítséget kérni tőletek.

Adott egy User controller, ebben van egy actionAdd illetve actionMod nevű függvény, actionAdd mikor meghívódik, akkor afterSave-re szeretném hogy egy bizonyos dolog történjen, viszont ha az actionMod hívódik meg, akkor szintén szeretném, hogy afterSave-re történjen valami, de nem az mint ami az actionAdd-nél.

Hogy érdemes ezt megvalósítani?

1. A modell osztályban, az afterSave-nél megnézni hogy mi az adott model scenario-ja és az alapján eldönteni hogy mi történjen?

2. A User controller osztályban, az adott action-höz felvenni az attachEventHandler függvénnyel eseményeket?

Van valami más ötlet amivel szépen kivitelezni lehet az egészet?

Sajnos nekem az első kettőn kívül nem jutott eszembe más, de nem vagyok biztos benne, hogy ezek a legjobb megoldások.

Egy nagyobb rendszerről van szó, tehát több eseménykezelő is tartozhat egy controller-hez, csak az egyszerűség kedvéért írtam a példát, hogy szemléltessem a problémát.

Előre is köszönöm a segítséget!
0

#2 User is offline   phtamas 

  • Advanced Member
  • PipPipPip
  • Yii
  • Group: Members
  • Posts: 529
  • Joined: 26-February 11
  • Location:Mezőtúr, Hungary

Posted 14 May 2014 - 10:49 AM

View PostAttila, on 13 May 2014 - 09:15 AM, said:

1. A modell osztályban, az afterSave-nél megnézni hogy mi az adott model scenario-ja és az alapján eldönteni hogy mi történjen?

2. A User controller osztályban, az adott action-höz felvenni az attachEventHandler függvénnyel eseményeket?


Attól függ, hogy az a "bizonyos dolog", aminek meg kell történnie, a controller actionhoz vagy a model scenariohoz kötődik-e szorosabban. (A kettő nem ugyanaz. Ha nem sima CRUD-ról van szó, hanem kicsit bonyolultabb logikáról, akkor több controller action is update-elheti ugyanazt a modelt, illetve egy action több modelt is létrehozhat vagy frissíthet.) Ha a controller actionhoz kötődik az extra kód végrehajtása, akkor viszont fölösleges eventhandlerekkel bajlódni, sikeres mentés után egyszerűen a controllerből indítsd el szükséges műveletet.
0

#3 User is offline   Attila 

  • Newbie
  • Yii
  • Group: Members
  • Posts: 4
  • Joined: 23-April 13

Posted 23 May 2014 - 11:25 AM

View Postphtamas, on 14 May 2014 - 10:49 AM, said:

Attól függ, hogy az a "bizonyos dolog", aminek meg kell történnie, a controller actionhoz vagy a model scenariohoz kötődik-e szorosabban. (A kettő nem ugyanaz. Ha nem sima CRUD-ról van szó, hanem kicsit bonyolultabb logikáról, akkor több controller action is update-elheti ugyanazt a modelt, illetve egy action több modelt is létrehozhat vagy frissíthet.) Ha a controller actionhoz kötődik az extra kód végrehajtása, akkor viszont fölösleges eventhandlerekkel bajlódni, sikeres mentés után egyszerűen a controllerből indítsd el szükséges műveletet.


Köszönöm szépen a segítséget!
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