Merih Forum Programlama ve yazılım algoritmalar programlama python Flask flask-wtf eklentisi ile web formlarda çalışma

  • 0 Oy - 0 Ortalama
  • 1
  • 2
  • 3
  • 4
  • 5
flask-wtf eklentisi ile web formlarda çalışma

 
#1

flask-wtf eklentisi ile form oluşturmak oldukça kolaydır. Her bir web form bir sınıf tarafından tanımlanır ve bu sınıf 

Kod:
FlaskForm

 veya 

Kod:
Form

 sınıfından türetilir(bu iki sınıf arasında herhangi bir fark yoktur, sadece yeni versiyonlarda Form ismi FlaskForm ile değiştirilmiştir). Bu sınıfın özellikleri form içerisindeki alanları temsil ederler. Bu alanlar wtforms modülünden import edilerek kullanılırlar, bu alanların her biri bir sınıf tarafından temsil edilir. Ek olarak 

Kod:
validators

 isminde bir modül vardır. Bu modül sayesinde bir veya birden fazla validator tanımlanabilir. Bu validator'lar kullanıcı tarafından doldurulan alanın valid(geçerli) olup olmadığını kontrol etmek için kullanılır. Örneğin email alanı için doldurulan metin(text) 

Kod:
@

 karakteri içermelidir vs. flask-wtf eklentisi wtforms kütüphanesi kullanılarak geliştirilmiştir. Bu yüzden flask-wtf yüklendikten sonra "wtforms"da yüklenecektir.

Kod:
from flask_wtf import FlaskForm
from wtforms import StringField, SubmitField
from wtforms.validators import DataRequired

class NameForm(FlaskForm):
   name = StringField('Enter username', validators=[DataRequired()])
   submit = SubmitField('Submit')

basit bir form sınıfı oluşturduk. Field soneki ile biten sınıflar form alanlarını temsil edecek olan sınıflardır. İlk parametreler form alanının üzerinde gösterilecek metindir. 
Kod:
validators=[DataRequired()]

 ile bu alanın doldurulması zorunlu(required) bir alan olduğunu söylüyoruz.

Kod:
@app.route('/', methods=['GET', 'POST'])
def index():
   form = NameForm()
   return render_template('index.html', form=form)


#index.html
{% extends 'bootstrap/base.html' %}
{% import 'bootstrap/wtf.html' as wtf %}
{{wtf.quick_form(form)}}

yukarıdaki örnekte oluşturduğumuz form sınıfından bir nesne türettik bu nesneyi html sayfamıza gönderdik. Html sayfasındaki import satırı 
Kod:
flask-bootstrap

 eklentisi ile gelen 

Kod:
wtf.html

 sayfasındaki macroları kullanmamızı sağlayacaktır. Gördüğünüz gibi 

Kod:
quick_form()

 

Kod:
wtf.html

 sayfasında tanımlanan bir macrodur. Bizim için form elemanını görüntüleyecektir.




Bul
Alıntı


Benzer Konular...
Konu: Yazar Cevaplar: Gösterim: Son Mesaj
  Flask ile örnek bir uygulama altyapısı efsane 1 2,665 30-05-2017, Saat: 18:14
Son Mesaj: dalaylama
  database migration, Flask-migrate eklentisi efsane 0 1,967 30-05-2017, Saat: 17:21
Son Mesaj: efsane
  Flask-sqlalchemy ile tablo oluşturma, tablolar arasında ilişki tanımlama efsane 0 2,200 30-05-2017, Saat: 17:19
Son Mesaj: efsane
  Flask-sqlalchemy eklentisi, sütun veri tipleri efsane 0 1,942 30-05-2017, Saat: 17:18
Son Mesaj: efsane
  flask uygulamasına veritabanı ekleme sqlalchemy, orm efsane 0 2,316 30-05-2017, Saat: 17:16
Son Mesaj: efsane

Digg   Delicious   Reddit   Facebook   Twitter   StumbleUpon  


Bu konuyu görüntüleyen kullanıcı(lar):
1 Ziyaretçi

   
Türkçe Çeviri: Emre KRMN, Kodlayanlar MyBB, © 2002-2022 MyBB Group.  



Merih Forum® bilgi paylaşım platformu. 2015-∞ Tüm hakları saklıdır.