2016-03-26 22 views
0

belirlendikten sonra bir metin alanının içeriğini nasıl ayarlanacağını: bir textarea etiketi oluştururWeb2py: ben bazı (şu anda boş) metin alanları güncelleyen bir SQLFORM oluşturmak için web2py kullanıyorum

form = SQLFORM(db.table, db.table(1), fields = ['blank_name'])

name='blank_name'. Daha sonra bu metin alanı için varsayılan metni bir değişkene ayarlamak istiyorum. Bu yüzden

form.element(_name='blank_name').update(_value='My default value')

denedim ama bu sadece 'My varsayılan değer' olarak textarea 'değer' özelliğini ayarlar. Önceden boş olan textarea'nın içeriğini içeriğini bir değere nasıl ayarlayabilirim?

cevap

1

en basit yaklaşım (formunu oluşturmadan önce) alanı varsayılan kurulumu basittir: Orijinal yaklaşımla ilgili olarak

db.table.blank_name.default = 'My default value' 

, web2py HTML yardımcıları kendi bileşenlerine ilişkin listelerin gibi hareket (yani içeriği) Bu nedenle içeriği güncellemek için .append veya .insert yöntemlerini kullanabilirsiniz.

+0

Varsayılan değer yaklaşımının yalnızca DB'de yeni bir satır oluştururken, var olanı güncelleştirmediğinde çalıştığını buldum. Ayrıca güncellenmiş her satır için farklı bir varsayılan var, bu yüzden 'varsayılan' yöntem uygunsuz görünüyor. Ama form.element (_name = 'blank_name'). Eklemek ("benim metin") iyi çalışıyor, ve ben formun geçerliliğini onaylamadan geçeceğine inanıyorum. Bunun için çok teşekkürler. – user2667066

+0

Doğru, varsayılan ayarı varolan bir kaydı güncelleştirirken çalışmaz. Bununla birlikte, her satır için farklı bir değere ihtiyaç duyduğunuzda bile varsayılan * seçeneğini kullanabilirsiniz *, "varsayılan" öznitelik, kodunuzda herhangi bir şekilde, form oluşturma satırından hemen önce (ör. varsayılanın sadece bir kez modelin ilk tanımlandığı tek bir değere ayarlanması). – Anthony

İlgili konular