Thread overview
formHelper.d
Jun 25, 2012
Kadir Can
Jun 25, 2012
Kadir Can
Jun 28, 2012
Kadir Can
June 25, 2012

Merhaba arkadaşlar.
formhelper kısmına geçtim.Şu an için htmlhelper işimizi görecek seviyeye geldi.Aşağıda kodlar var.Yorumlarınızı bekliyorum.

module system.helper.formhelper;
import htmlhelper;
enum formMethod{ get, post };
enum inputType{ textField, passwordField, radioButton, checkBox, submitButton };

class Input : XmlElement
{
   inputType _type;

   this(inputType type, string name)
   in
   {
	assert(name.length > 0);
   }
   body
   {
	super("input");
	_type = type;
	final switch( type) {
	    case inputType.textField: setAttributes(["type":"text"]); break;
	    case inputType.passwordField: setAttributes([ "type":"password"]); break;
	    case inputType.radioButton: setAttributes(["type":"radio"]); break;
	    case inputType.checkBox: setAttributes(["type":"checkbox"]); break;
	    case inputType.submitButton: setAttributes(["type":"submit"]); break;
	}
	setAttributes(["name":name]);
	if( type == inputType.submitButton ) {
	    setAttributes(["value":"submit"]);
	}
   }

   @property void setValue( string value )
   in
   {
	assert( (_type == inputType.radioButton) || (_type == inputType.checkBox) );
   }
   body
   {
	setAttributes(["value":value]);
   }

   @property void check( )
    in
   {
	assert( (_type == inputType.radioButton) || (_type == inputType.checkBox) );
   }
   body
   {
	setAttributes(["checked":"on"]);
   }
}

class HtmlForm : XmlElement
{
   this( formMethod method )
   {
       super("form");
       final switch( method )
       {
           case formMethod.get: setAttributes(["method":"GET"]); break;
           case formMethod.post: setAttributes(["method":"POST"]); break;
	}
   }

   @property setAction( string page )
   {
	setAttributes( ["action":page] );
   }
}

İlk fırsatta birim testleri ekleyeceğim.

Ayrıca aklıma bir şey takıldı.Sanırım html ile form oluşturabiliyoruz ama action ile gittiğimiz sayfada gelen veriyi okuyamıyorum.Ben bu noktada hep PHP veya ASP gibi başka bir dil kullanıldığını gördüm.Html ile bu veriyi okuyailir miyiz?

İyi günler.

--
[ Bu gönderi, http://ddili.org/forum'dan dönüştürülmüştür. ]

June 25, 2012

Kodlama standartlarına alışmak benim için çok zor oldu.Hala bazı hatalar yapıyorum.En kısa zamanda düzelteceğim.

--
[ Bu gönderi, http://ddili.org/forum'dan dönüştürülmüştür. ]

June 25, 2012

Alıntı:

>

Ayrıca aklıma bir şey takıldı.Sanırım html ile form oluşturabiliyoruz ama action ile gittiğimiz sayfada gelen veriyi okuyamıyorum.Ben bu noktada hep PHP veya ASP gibi başka bir dil kullanıldığını gördüm.Html ile bu veriyi okuyailir miyiz?

hayır okuyamayız. turna'da Şuradaki: https://github.com/acehreli/turna/blob/master/library/envVar.d get ve post işlevi ile gereken bilgileri alacağız.

Kodlar arası boşlukları yani kod görünümü düzenlersen çok güzel olacak. Üzerinde uğraştığımız güzel bir kodlama standartı vardı onu uygulayabilirsin: http://ddili.org/wiki/index.php?title=Kodlama_Standard%C4%B1

Onun haricinde bana herşey güzel gözüktü.

--
[ Bu gönderi, http://ddili.org/forum'dan dönüştürülmüştür. ]

June 28, 2012

IDE olarak Geany'ye geçtim.Umarım artık sorun olmaz.Standart olarak wiki'dekini kullanıyoruz, değil mi?Ben onlara uymaya çalışıyorum.
Yorumları yarın ilk iş olarak ekliyorum.
Modül ismini form olarak yaparsak daha kısa olur, çok iyi fikir.Yarın yeni kodlar yazmadan önce bunları düzenleyeceğim.
Uyarıların için teşekkür ederim.

--
[ Bu gönderi, http://ddili.org/forum'dan dönüştürülmüştür. ]

June 28, 2012

sanırım ide sende sorun yaratıyor. Başka bir ide dene.

Şuan pull request etmişsin ancak kod stilinde standart olmadığı için okuyamadım. Ayrıca işlevlere nasıl kullanıldığını anlatan bölümleri koyarsan bence çok iyi olur. Kısa süre sonra nasıl kullanıldığını hangi parametreler aldığını unutacağız. İşlevlerin nasıl kullanıldığını öğrenmek için kodlara yeniden bakmamalıyız. Heleki kullanıcılar hiç bakmamalı

Bu sıkıcı işlemler ileride gerçekten gerekli oluyormuş.

Birde modül isimlendirmlerini formhelper biçiminde değil de formHelper biçiminde yaparsan daha iyi olur bence. Birinci sözcükten sonraki sözcükleri büyük yazarsan sözcükleri birbirinden ayırmak modül adını okumak kolaylaşıyor. ona göre adını değiştirebilirsin. Hatta sonuna helper adınıda istersen koyma. helper dizininde form bulunursa biz bunun form helper olduğunu anlayabiliriz? seçim senin.

--
[ Bu gönderi, http://ddili.org/forum'dan dönüştürülmüştür. ]

June 28, 2012

Alıntı (canalpay):

>

modül isimlendirmlerini formhelper biçiminde değil de formHelper biçiminde yaparsan

Normalde modül isimleri dosya isimlerine bire bir karşılık geldikleri için ve dosya sistemleri küçük/büyük harf ayrımlarında standart davranmadıklarından bence modül isimleri hep küçük ve ASCII harfler içermeli.

Ali

--
[ Bu gönderi, http://ddili.org/forum'dan dönüştürülmüştür. ]