A library to create forms in aiogram3
Project description
aiogram3-form
A library to create forms in aiogram3
Example
# suppose you import here your router and bot objects
from aiogram import F, types
from aiogram3_form import Form, FormField
class NameForm(Form, router=your_router):
first_name: str = FormField(enter_message_text="Enter your first name please")
second_name: str = FormField(enter_message_text="Enter your second name please", filter=F.text.len() > 10)
age: int = FormField(enter_message_text="Enter age as integer", error_message_text="Age should be numeric!")
@NameForm.submit()
async def name_form_submit_handler(form: NameForm, event_chat: types.Chat):
# handle form data
# also supports aiogram standart DI (e. g. middlewares, filters, etc)
await bot.send_message(
event_chat.id, f"Your full name is {form.first_name} {form.second_name}!"
)
@router.message(F.text == "/form")
async def form_handler(message: types.Message, state: FSMContext):
await NameForm.start(state) # start your form
After submit callback call the state would be automatically cleared.
You can control this state using the following metaclass kwarg
...
class NameForm(Form, clear_state_on_submit=False): # True by default
...
@NameForm.submit()
async def name_form_submit_handler(form: NameForm, state: FSMContext):
# so you can set your exit state manually
await state.set_state(...)
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
aiogram3_form-0.3.1.tar.gz
(5.4 kB
view details)
Built Distribution
File details
Details for the file aiogram3_form-0.3.1.tar.gz
.
File metadata
- Download URL: aiogram3_form-0.3.1.tar.gz
- Upload date:
- Size: 5.4 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: poetry/1.3.0 CPython/3.10.8 Windows/10
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | 6dbc79fa8616d27ef9ae33fde8341cc8c081cd1e7506b6077b09cb3b76e56b61 |
|
MD5 | 80035e4e71b1b95b1632f9c7a8e071ef |
|
BLAKE2b-256 | e4a806bc3cee9982180c9148a6ebe9d4cf31d66e3c0488f3f92782b80f4b2c5b |
File details
Details for the file aiogram3_form-0.3.1-py3-none-any.whl
.
File metadata
- Download URL: aiogram3_form-0.3.1-py3-none-any.whl
- Upload date:
- Size: 6.4 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: poetry/1.3.0 CPython/3.10.8 Windows/10
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | b1df884f2ed78aef2d9d7a3973a0afc6e3fd9e3b2b49ec6dc5af5036ecba1232 |
|
MD5 | 90b5c2a3aa43a150b0f1c03fcec61782 |
|
BLAKE2b-256 | 7f09c1edcf77ab67958b1d9798673aac21a62477e14137cb6f902f48f203e9a9 |