<?xml version="1.0" encoding="utf-8"?>
<rss version="2.0">
	<channel>
		<title><![CDATA[Forum CakePHP.org.pl - Użytkownicy online - problem z app_controll.php]]></title>
		<link>http://forum.cakephp.org.pl/topic/119/uzytkownicy-online-problem-z-appcontrollphp/</link>
		<description><![CDATA[Najświeższe odpowiedzi w Użytkownicy online - problem z app_controll.php.]]></description>
		<lastBuildDate>Wed, 05 May 2010 21:16:13 +0000</lastBuildDate>
		<generator>PunBB</generator>
		<item>
			<title><![CDATA[Odp: Użytkownicy online - problem z app_controll.php]]></title>
			<link>http://forum.cakephp.org.pl/post/608/#p608</link>
			<description><![CDATA[<p>w app_controller dodajesz zmienna klasy:<br /></p><div class="codebox"><pre><code>var $uses = array(&#039;Member&#039;);</code></pre></div><p>dzieki temu kazda akcja bedzie miala model Member <img src="http://forum.cakephp.org.pl/img/smilies/smile.png" width="15" height="15" alt="smile" /></p><p>a potem w beforeFilter() dajesz:<br />- sprawdzenie czy jest zmienna sesyjna ($this-&gt;Session-&gt;check(&#039;Auth.User.id&#039;))<br />- jezeli jest, to zaktualizuj baze itp.</p>]]></description>
			<author><![CDATA[dummy@example.com (m1chal)]]></author>
			<pubDate>Wed, 05 May 2010 21:16:13 +0000</pubDate>
			<guid>http://forum.cakephp.org.pl/post/608/#p608</guid>
		</item>
		<item>
			<title><![CDATA[Odp: Użytkownicy online - problem z app_controll.php]]></title>
			<link>http://forum.cakephp.org.pl/post/572/#p572</link>
			<description><![CDATA[<p>pewnie nie wytrzymal brniecia bez konca w php4 , kiedy ostani raz sprawdzalem roadmap kejka, zapowiadalo sie na to ze bedzie napisany w php5 , tuz przed wypuszczeniem php8 rc 1 ;-) </p><p>Co do samego lithium ... jakos tego nie widze na serwerach produkcyjnych, chyba ze ktos sobie chce koniecznie zrobic cos we frameworku php5&nbsp; bez przegladania tysiecy stron dokumentacji <img src="http://forum.cakephp.org.pl/img/smilies/smile.png" width="15" height="15" alt="smile" /></p>]]></description>
			<author><![CDATA[dummy@example.com (robal77)]]></author>
			<pubDate>Tue, 09 Feb 2010 21:12:43 +0000</pubDate>
			<guid>http://forum.cakephp.org.pl/post/572/#p572</guid>
		</item>
		<item>
			<title><![CDATA[Odp: Użytkownicy online - problem z app_controll.php]]></title>
			<link>http://forum.cakephp.org.pl/post/571/#p571</link>
			<description><![CDATA[<p>no musze przyznac, ze jest duzo racji w tym co piszesz. tak btw gwoo juz nie pisze cake-a tylko lithium <img src="http://forum.cakephp.org.pl/img/smilies/smile.png" width="15" height="15" alt="smile" /></p>]]></description>
			<author><![CDATA[dummy@example.com (tomay7)]]></author>
			<pubDate>Wed, 03 Feb 2010 22:42:45 +0000</pubDate>
			<guid>http://forum.cakephp.org.pl/post/571/#p571</guid>
		</item>
		<item>
			<title><![CDATA[Odp: Użytkownicy online - problem z app_controll.php]]></title>
			<link>http://forum.cakephp.org.pl/post/570/#p570</link>
			<description><![CDATA[<p>W wiekosci przypadkow, jezeli juz ladujesz model w ktorlerze, wywolujesz z niego odpowiednia metode, i wysylasz dane do widoku/ komponentu, wtedy zamiast : <br /></p><div class="codebox"><pre><code>if (!isset($this-&gt;Liwko)) $this-&gt;loadModel(&#039;Liwko&#039;);
$this-&gt;set(&quot;data&quot;,$this-&gt;Liwko-&gt;skoczPoPiwko());</code></pre></div><p>mozesz zrobic tak: </p><div class="codebox"><pre><code>$this-&gt;set(&quot;data&quot;,ClassRegistry::init(&quot;Liwko&quot;,&quot;Model&quot;)-&gt;skoczPoPiwko()); </code></pre></div><p>Zeby mozna bylo obslugiwac bledy ladowania modelu, albo unikac tworzenia dwoch instancji tego samego modelu, mozna opakowac ClassResitry::init i ClassRegistry::getObject w jakas metode, dzieki ktorej zminimializujemy ryzyko refactoringu 3/4 aplikacji <img src="http://forum.cakephp.org.pl/img/smilies/wink.png" width="15" height="15" alt="wink" /></p><p>Przy korzystaniu z fluent interface, wygla to jeszcze bardziej minimalistycznie i przejzyscie : </p><div class="codebox"><pre><code>$this-&gt;getModelObject(&quot;Liwko&quot;)-&gt;skoczPoPiwko()-&gt;getUsers()-&gt;sortByName()-&gt;saveTofile(&quot;log.txt&quot;)-&gt;skoczPoDrugie();</code></pre></div><p>Tak, fatycznie gwoo gdzies tam pisal , ze on osobiscie woli&nbsp; $this-&gt;loadModel(), ale ja uwazam ze&nbsp; modele , o ile nie sa automatycznie ladowanie przez kontroller ( model podstawowy, albo z $uses), to nie powinny byc ladowane wg lasnego widzimisie, do kontrollera mozna zawsze zrobic model, niekrzystajacy z tabeli, porobic akcesory do obcych modeli i tam sobie ladowac, nie ladowac, sprawdzac poprawnosc otrzymanych danych i dopowiednio reagowac na bledy, zostawiac kontrollery przejrzystymi.</p><p>A terazskocze po piate, sam.</p>]]></description>
			<author><![CDATA[dummy@example.com (robal77)]]></author>
			<pubDate>Mon, 01 Feb 2010 02:23:34 +0000</pubDate>
			<guid>http://forum.cakephp.org.pl/post/570/#p570</guid>
		</item>
		<item>
			<title><![CDATA[Odp: Użytkownicy online - problem z app_controll.php]]></title>
			<link>http://forum.cakephp.org.pl/post/569/#p569</link>
			<description><![CDATA[<p>deweloperzy Cake radza uzywac loadModel, no i zauwaz jaka roznica w objetosci kodu <img src="http://forum.cakephp.org.pl/img/smilies/tongue.png" width="15" height="15" alt="tongue" /></p>]]></description>
			<author><![CDATA[dummy@example.com (tomay7)]]></author>
			<pubDate>Thu, 28 Jan 2010 21:18:30 +0000</pubDate>
			<guid>http://forum.cakephp.org.pl/post/569/#p569</guid>
		</item>
		<item>
			<title><![CDATA[Odp: Użytkownicy online - problem z app_controll.php]]></title>
			<link>http://forum.cakephp.org.pl/post/566/#p566</link>
			<description><![CDATA[<div class="quotebox"><cite>tomay7 napisał/a:</cite><blockquote><p>skorzystaj z loadModel:</p><div class="codebox"><pre><code>if (!isset($this-&gt;Member)) $this-&gt;loadModel(&#039;Member&#039;);</code></pre></div></blockquote></div><p>Raczej bym uzyl jednak klasy registry ;-)</p>]]></description>
			<author><![CDATA[dummy@example.com (robal77)]]></author>
			<pubDate>Sat, 23 Jan 2010 07:22:25 +0000</pubDate>
			<guid>http://forum.cakephp.org.pl/post/566/#p566</guid>
		</item>
		<item>
			<title><![CDATA[Odp: Użytkownicy online - problem z app_controll.php]]></title>
			<link>http://forum.cakephp.org.pl/post/565/#p565</link>
			<description><![CDATA[<p>skorzystaj z loadModel:</p><div class="codebox"><pre><code>if (!isset($this-&gt;Member)) $this-&gt;loadModel(&#039;Member&#039;);</code></pre></div>]]></description>
			<author><![CDATA[dummy@example.com (tomay7)]]></author>
			<pubDate>Mon, 18 Jan 2010 00:00:10 +0000</pubDate>
			<guid>http://forum.cakephp.org.pl/post/565/#p565</guid>
		</item>
		<item>
			<title><![CDATA[Odp: Użytkownicy online - problem z app_controll.php]]></title>
			<link>http://forum.cakephp.org.pl/post/556/#p556</link>
			<description><![CDATA[<p>jeśli 1.2 spróbuj ClassRegistry::init()</p>]]></description>
			<author><![CDATA[dummy@example.com (id02009)]]></author>
			<pubDate>Mon, 28 Dec 2009 09:18:32 +0000</pubDate>
			<guid>http://forum.cakephp.org.pl/post/556/#p556</guid>
		</item>
		<item>
			<title><![CDATA[Użytkownicy online - problem z app_controll.php]]></title>
			<link>http://forum.cakephp.org.pl/post/554/#p554</link>
			<description><![CDATA[<p>Potrzebuje informacji na temat użytkowników, którzy są online w serwisie. W bazie danych trzymam informacje o ostatniej akcji zalogowanego użytkownika i na tej podstawie wysnuwam wniosek, czy jest on on-line, czy nie. Zapis akcji robię w app_controller.php jako, że kod tam zawarty jest wykonywane zawsze. Cały kod jest zawarty w metodzie beforeRender</p><div class="codebox"><pre><code>$member=$this-&gt;Session-&gt;read(&#039;Auth.Member&#039;);
        if(!empty($member)){
            $this-&gt;set(&#039;auth&#039;, true);
            if(isset($this-&gt;Member)){
                $data=array();
                $data[&#039;Member&#039;][&#039;id&#039;]=$member[&#039;id&#039;];
                $data[&#039;Member&#039;][&#039;last_action&#039;]=time();
                $this-&gt;Member-&gt;save($data,false);
            }
        } else
            $this-&gt;set(&#039;auth&#039;, false);</code></pre></div><p>Problem w tym, że czasami odwołanie $this-&gt;Member - wyrzuca błąd, gdyż nie każda podstrona używa tego modelu. W takim wypadku chciałem dynamiczne załadować moduł, jednak App:import wyrzuca błąd, że metoda import() nie istnieje. W jaki sposób zrobić to tak, aby działało poprawnie? Tzn. załadować dynamicznie moduł Member lub w ogóle przenieść wywołanie z app_controller.php gdzie indziej ten kod?</p>]]></description>
			<author><![CDATA[dummy@example.com (sabat24)]]></author>
			<pubDate>Fri, 25 Dec 2009 12:05:39 +0000</pubDate>
			<guid>http://forum.cakephp.org.pl/post/554/#p554</guid>
		</item>
	</channel>
</rss>
