Kite Surf 08/24/2009
![]() Geçen haftasonu Kilyos'ta ilk kite surf derslerimi aldim. Simdilik sekiz saatlik bir sure oldu ve henuz board da kullanmadim. Biraz daha derse ve pratiğe ihtiyacım var. Dersi Volkite'ta aldım. Bana ders veren de Tayfun hocaydı. Kendisi çok iyi, eğlenceli biri ve öğrenmeme çok yardımcı oldu. Acemilere birşey öğretmek sahiden sabır isteyen bir iş; onu kutluyorum. İlkönce karada küçük bir kite ile başladık daha sonra 6 metrekare ve 9 metrekarelik kitelarla devam ettik. Kite surf beklediğimden daha zor çıktı doğrusu. Uzaktan göründüğü gibi değilmiş. 8 saatlik ders bile vücudumun heryerinin ağrımasına yetti. Tabi, bu durum benim gibi yeni öğrenenler için geçerli. Tecrübeli sürücüler çok daha az yorulup işin keyfini çıkarıyorlar. Kumların üstünde 10 mt sürüklenmemi de düşünürsek normal tabii :) Bilenler için söyleyeyim, karada kite ı power zone a soktum da :) Volkite Burç Beach'te. Burç Beach Boğaziçi Üniversitesi'nin bir tesisi. Tesis ücretli ve herkese açık. En iyi ulaşım şekli kendi arabanızla olacaktır çünkü otobüsler seyrek geçiyor ve İstanbul'dan uzak bir mesafede olduğu için yolculuk yorucu olabilir. Umarım ilerde ilerletmek için daha fazla fırsatım olur. Add Comment Eğer Ruby on Rails ile uygulama geliştiriyorsanız fixture'ları kullanmışsınızdır. Fixture'lar YAML veya CSV biçimindeki metin dosyalarıdır ve test veritabanınızı doldurmak için kullanılır. Bu çok karmaşık olmayan veri tabanı şemaları için uygun ve etkin bir çözümdür. Ancak, modellerinizin sayısı artıp sisteminiz karmaşık hale gelmeye başlayınca fixture'ları yönetmek zorlaşmaya başlar. Birbirine bağımlı olmaya başlayan fixture'lari birbirini etkilemeyecek şekilde arttırmaya veya düzenlemeye çalışmak vakit alır ve pratik olmaktan çıkarlar. Bu durumda FixtureReplacement gibi bir plugin kullanıp işlerinizi kolaylaştırabilirsiniz. FixtureReplacement fixture'lardaki dezavantajları ortadan kaldırır. FixtureReplacement naıl kullanıldığını merak ediyorsanız "http://github.com/smtlaissezfaire/fixture-replacement-git/tree/master":http://github.com/smtlaissezfaire/fixture-replacement-git/tree/master adresindeki readme'ye bir göz atın derim. Çok basit bir kullanımı olduğunu göreceksiniz. Geçenlerde FixtureReplacement kullanırken bir sorunla karşılaştık ama basit bir alternatif yöntem kullanarak bu sıkıntıyı aştık. Problem FixtureReplacement'ın primary key'i olmayan bir tablo için 'create' methodunun çalışmamasıydı. Diğer bir deyişle eğer tablonuzda bir 'id' alanı yok veya modelinizde 'set_primaty_key' ile bir alanı primary key olarak seçmediyseniz ActiveRecord'ın 'create' methodunu kullanan FixtureReplacement bu yüzden hata veriyor. Örneğin, Kedi tablomuz olsun ve alanları şöyle olsun: ad, cins, goz_rengi, tuy_rengi, kilo Bu modeli FixtureReplacement sunduğu yöntemle (create_model) şu şekilde yaratmaya çalışalım create_kedi( :ad => "Sarman", :cins => "tekir", :tuy_rengi => "sarı", :goz_rengi => "ela", :kilo => "6" ) Sonuç aşağıdaki hata gibi olacaktır. ActiveRecord::StatementInvalid: PGError: ERROR: column "id" does not exist Bunu şu şekilde de denesek sonuç aynı olurdu Kedi.create( :ad => "Sarman", :cins => "tekir", :tuy_rengi => "sarı", :goz_rengi => "ela", :kilo => "6" ) veya kedi = Kedi.new( :ad => "Sarman", :cins => "tekir", :tuy_rengi => "sarı", :goz_rengi => "ela", :kilo => "6" ) kedi.save Doğrudan SQL kullandığımız zaman bu problemin ortadan kalktığını görüyoruz sql = "INSERT INTO kedi (ad, cins, goz_rengi, tuy_rengi, kilo) VALUES ('Sarman', 'tekir', 'ela', 'sarı', 6)" ActiveRecord::Base.connection.execute(sql) h2. Sonuç FixtureReplacement kullanıyor ve primary key olmayan bir tablonuz varsa create_model (model yerine kendi modellerinizden birini düşünün create_kedi gibi) metodunu kullanamazsınız. Bunun yerine doğrudan SQL çalşıtırmanız testleriniz sırasında size bir çözüm sağlayacaktır. |

RSS Feed