-
Notifications
You must be signed in to change notification settings - Fork 0
1.4.2 Kelas Form
David Rigan edited this page Feb 13, 2020
·
2 revisions
Ketika menggunakan flask-wtf, masing-masing dari form yang berada di web diwakili oleh kelas FlaskForm. Setiap field form boleh memiliki validator lebih dari satu. Validator adalah fungsi yang memeriksa apakah data yang dikirimkan oleh pengguna valid atau tidak valid.
Tambahakan kode ini pada app.py
# app.py: menambahkan forms
...
# Forms - Tambahkan kode ini
from flask_wtf import FlaskForm
from wtforms import StringField, SubmitField
from wtforms.validators import DataRequired
app = Flask(__name__)
moment = Moment(app)
app.config['SECRET_KEY'] = 'thisisverysecret'
# Forms - Tambahkan kode ini
class UserForm(FlaskForm):
name = StringField('Siapa nama kamu?', validators=[DataRequired()])
submit = SubmitField('Lanjutkan')
...Berikut ini tipe field pada Flask-WTF:
| Tipe Field | Deskripsi |
|---|---|
| BooleanField | True dan False |
| DateField | Text Field untuk datetime.date |
| DateTimeField | Text Field untuk datetime.datetime |
| DecimalField | Text Field untuk decimal.Decimal |
| FileField | Untuk upload file |
| HiddenField | Hidden text field |
| MultipleFileField | Untuk upload banyak file |
| FieldList | List untuk field |
| FloatField | Text Field untuk float |
| FormField | Form embedded sebagai field |
| IntegerField | Text Field untuk integer |
| PasswordField | Text Field untuk password |
| RadioField | List radio button |
| SelectField | Dropdown list |
| SelectMultipleField | Dropdown list untuk memilih lebih dari 1 |
| SubmitField | Button submit |
| StringField | Text Field untuk string |
| TextAreaField | Text Area |
Dan tipe-tipe data untuk wtforms.validators:
| Validator | Deskripsi |
|---|---|
| DataRequired | Field tidak boleh kosong |
| Validasi email address | |
| EqualTo | Membandingkan nilai dari dua field |
| InputRequired | Field tidak boleh kosong |
| IPAddress | Validasi untuk IPv4 network address |
| Length | Validasi panjang karakter |
| MacAddress | Validasi MacAddress |
| NumberRange | Validasi panjang panjang numeric |
| Optional | Memberikan nilai kosong pada field |
| Regexp | Memvalidasi input terhadap ekspresi reguler |
| URL | Validasi URL |
| UUID | Validasi UUID |
| AnyOf | Memvalidasi bahwa input adalah salah satu dari daftar nilai yang mungkin |
| NoneOf | Memvalidasi bahwa input adalah tidak ada dari daftar nilai yang mungkin |
Referensi :
- Miguel Grinberg - Flask Web Development, Developing Web Applications with Python