<?xml version="1.0" encoding="UTF-8"?><!-- generator="wordpress/2.0.3" -->
<rss version="2.0" 
	xmlns:content="http://purl.org/rss/1.0/modules/content/">
<channel>
	<title>Komentarze do wpisu 'Finder a’la Ruby'</title>
	<link>http://jarmark.org/post/finder-a-la-ruby/</link>
	<description>Targowisko informacji, porad i pomysłów.</description>
	<pubDate>Wed, 07 Jan 2009 02:18:58 +0000</pubDate>
	<generator>http://wordpress.org/?v=2.0.3</generator>

	<item>
		<title>Autor: Jarmark.org &#187; Rails 2.0 okiem zgreda</title>
		<link>http://jarmark.org/post/finder-a-la-ruby/#comment-2448</link>
		<pubDate>Thu, 11 Oct 2007 10:10:49 +0000</pubDate>
		<guid>http://jarmark.org/post/finder-a-la-ruby/#comment-2448</guid>
					<description>[...] dodanie abstrakcji do tworzonych zapytań - sam robiłem małą przymiarkę do tego problemu, później odkryłem ez_where, a ostatnio pojawił się jeszcze Ambition [...]</description>
		<content:encoded><![CDATA[<p>[&#8230;] dodanie abstrakcji do tworzonych zapytań - sam robiłem małą przymiarkę do tego problemu, później odkryłem ez_where, a ostatnio pojawił się jeszcze Ambition [&#8230;]
</p>
]]></content:encoded>
				</item>
	<item>
		<title>Autor: daniel</title>
		<link>http://jarmark.org/post/finder-a-la-ruby/#comment-68</link>
		<pubDate>Fri, 22 Sep 2006 09:25:59 +0000</pubDate>
		<guid>http://jarmark.org/post/finder-a-la-ruby/#comment-68</guid>
					<description>Witaj,
TAK TAK po trzykroć TAK, od kilku(nastu) dni używam właśnie ez_where, nie miałem tylko czasu, żeby go tu opisać ale już prawie prawie :)</description>
		<content:encoded><![CDATA[<p>Witaj,<br />
TAK TAK po trzykroć TAK, od kilku(nastu) dni używam właśnie ez_where, nie miałem tylko czasu, żeby go tu opisać ale już prawie prawie :)
</p>
]]></content:encoded>
				</item>
	<item>
		<title>Autor: Darek Rusin</title>
		<link>http://jarmark.org/post/finder-a-la-ruby/#comment-67</link>
		<pubDate>Fri, 22 Sep 2006 09:14:15 +0000</pubDate>
		<guid>http://jarmark.org/post/finder-a-la-ruby/#comment-67</guid>
					<description>Hej Daniel,

Nie jestem biegły w temacie, ale nie jest to przypadkiem podobne do tego co robi Ezra w pluginie ez_where? Zerknij sobie na te linki:

http://brainspl.at/articles/2006/01/30/i-have-been-busy
http://brainspl.at/articles/2006/06/30/new-release-of-ez_where-plugin</description>
		<content:encoded><![CDATA[<p>Hej Daniel,</p>
<p>Nie jestem biegły w temacie, ale nie jest to przypadkiem podobne do tego co robi Ezra w pluginie ez_where? Zerknij sobie na te linki:</p>
<p><a href='http://brainspl.at/articles/2006/01/30/i-have-been-busy' rel='nofollow'>http://brainspl.at/articles/2006/01/30/i-have-been-busy</a><br />
<a href='http://brainspl.at/articles/2006/06/30/new-release-of-ez_where-plugin' rel='nofollow'>http://brainspl.at/articles/2006/06/30/new-release-of-ez_where-plugin</a>
</p>
]]></content:encoded>
				</item>
	<item>
		<title>Autor: Adam Hoscilo</title>
		<link>http://jarmark.org/post/finder-a-la-ruby/#comment-53</link>
		<pubDate>Mon, 21 Aug 2006 11:58:47 +0000</pubDate>
		<guid>http://jarmark.org/post/finder-a-la-ruby/#comment-53</guid>
					<description>Przyznaje, ze api wyglada blyskotliwie i pomysl jest dobry tyle, ze niestety niewiele to zmienia poki DHH nie zainteresuje sie tym by do AR wprowadzic abstrakcje.
PS Kod zrodlowy wyglada niezle - moze przydaloby sie udostepnic go swiatu nie tylko Polsce? Moze ktos zainteresowalby sie tematem.</description>
		<content:encoded><![CDATA[<p>Przyznaje, ze api wyglada blyskotliwie i pomysl jest dobry tyle, ze niestety niewiele to zmienia poki DHH nie zainteresuje sie tym by do AR wprowadzic abstrakcje.<br />
PS Kod zrodlowy wyglada niezle - moze przydaloby sie udostepnic go swiatu nie tylko Polsce? Moze ktos zainteresowalby sie tematem.
</p>
]]></content:encoded>
				</item>
	<item>
		<title>Autor: daniel</title>
		<link>http://jarmark.org/post/finder-a-la-ruby/#comment-50</link>
		<pubDate>Mon, 21 Aug 2006 10:54:28 +0000</pubDate>
		<guid>http://jarmark.org/post/finder-a-la-ruby/#comment-50</guid>
					<description>Moją prawdziwą intencją było raczej przyjrzenie się jak ciężkim zadaniem jest dodanie bardziej abstrakcyjnej warstwy do tworzenia zapytań - efekt zaskoczył mnie samego.

Kodzik który realizuje tą abstrakcje jest całkowicie niezależny od AR (a precyzyjniej zależy od rzeczy ktore sie raczej nie zmienią - find_by_sql i table_name pozostanie myśle zawsze). Dzięki możliwości przerobienia tego kodu w plugin, pozsotanie praktycznie zawsze niezależny od zmian w ActiveRecord.</description>
		<content:encoded><![CDATA[<p>Moją prawdziwą intencją było raczej przyjrzenie się jak ciężkim zadaniem jest dodanie bardziej abstrakcyjnej warstwy do tworzenia zapytań - efekt zaskoczył mnie samego.</p>
<p>Kodzik który realizuje tą abstrakcje jest całkowicie niezależny od AR (a precyzyjniej zależy od rzeczy ktore sie raczej nie zmienią - find_by_sql i table_name pozostanie myśle zawsze). Dzięki możliwości przerobienia tego kodu w plugin, pozsotanie praktycznie zawsze niezależny od zmian w ActiveRecord.
</p>
]]></content:encoded>
				</item>
	<item>
		<title>Autor: Adam Hoscilo</title>
		<link>http://jarmark.org/post/finder-a-la-ruby/#comment-49</link>
		<pubDate>Mon, 21 Aug 2006 10:48:29 +0000</pubDate>
		<guid>http://jarmark.org/post/finder-a-la-ruby/#comment-49</guid>
					<description>Dodatkowym atutem ORMa z Dajngo jest to, ze w tym przypadku mozesz zadac takie pytanie i jakos wynik dostajesz QuerySet - tj obiekt, na ktorym mozesz dalej zadawac pytania lub oczywiscie wyciagac obiekty, ktore ten queryset zawiera.

Wyglada to tak: 
users_queryset = User.objects.filter(Q(logins_count=0) &amp;#38; 
    (Q(nick__contains&quot;adam&quot;) &amp;#124; Q(admin=True)))

ordered_users = users_queryset.order_by(&quot;-last_login&quot;)
filtered_users = users_queryset.filter(last_name__startswith=&quot;Ho&quot;)

#tu juz dostajemy obiekt
adamh = filtered_users.get(nick=&quot;adamh&quot;)


# mozemy leciec po QuerySecie
for user in ordered_users:
    print &quot;Imie: %s Nazwisko: %s, nick: %s&quot; % (user.first_name, user.last_name, user.nick)</description>
		<content:encoded><![CDATA[<p>Dodatkowym atutem ORMa z Dajngo jest to, ze w tym przypadku mozesz zadac takie pytanie i jakos wynik dostajesz QuerySet - tj obiekt, na ktorym mozesz dalej zadawac pytania lub oczywiscie wyciagac obiekty, ktore ten queryset zawiera.</p>
<p>Wyglada to tak:<br />
users_queryset = User.objects.filter(Q(logins_count=0) &amp;<br />
    (Q(nick__contains&#8221;adam&#8221;) | Q(admin=True)))</p>
<p>ordered_users = users_queryset.order_by(&#8221;-last_login&#8221;)<br />
filtered_users = users_queryset.filter(last_name__startswith=&#8221;Ho&#8221;)</p>
<p>#tu juz dostajemy obiekt<br />
adamh = filtered_users.get(nick=&#8221;adamh&#8221;)</p>
<p># mozemy leciec po QuerySecie<br />
for user in ordered_users:<br />
    print &#8220;Imie: %s Nazwisko: %s, nick: %s&#8221; % (user.first_name, user.last_name, user.nick)
</p>
]]></content:encoded>
				</item>
	<item>
		<title>Autor: Adam Hoscilo</title>
		<link>http://jarmark.org/post/finder-a-la-ruby/#comment-48</link>
		<pubDate>Mon, 21 Aug 2006 10:04:46 +0000</pubDate>
		<guid>http://jarmark.org/post/finder-a-la-ruby/#comment-48</guid>
					<description>To zly czlowiek musial byc, ktory zjechal Active Record :)
Tak serio to Danielu wiadomo, ze wiele da sie zrobic i wszystko bedzie dzialalo lepiej. Problem pojawia sie gdy np kod z nadbudowami ma przejsc pod czyjas opieke albo zmienia sie wersja Railsow i gdzies powstaja zgrzyty. Poki co chyba nie zanosi sie aby DHH myslal o przebudowaniu AR.
W Djangowym ORM wyglada to tak: http://www.djangoproject.com/documentation/models/or_lookups/</description>
		<content:encoded><![CDATA[<p>To zly czlowiek musial byc, ktory zjechal Active Record :)<br />
Tak serio to Danielu wiadomo, ze wiele da sie zrobic i wszystko bedzie dzialalo lepiej. Problem pojawia sie gdy np kod z nadbudowami ma przejsc pod czyjas opieke albo zmienia sie wersja Railsow i gdzies powstaja zgrzyty. Poki co chyba nie zanosi sie aby DHH myslal o przebudowaniu AR.<br />
W Djangowym ORM wyglada to tak: <a href='http://www.djangoproject.com/documentation/models/or_lookups/' rel='nofollow'>http://www.djangoproject.com/documentation/models/or_lookups/</a>
</p>
]]></content:encoded>
				</item>
</channel>
</rss>
