Model Based Validator design for Flask (Python) and Mongo DB
Model based custom validation for flask (python). Use Flask server and mongo db. Integrate with any SPA API development.
Create virtual environment and install requirements
pip install -r requirements.txt
{
"db" : {
"url" : " mongodb://localhost:27017/" ,
"name" :" db_name" ,
"user" :" " ,
"password" :" "
}
}
In model update collection name and desire fields name and fields type. For example see todo model file
From model folder write your individual model and configure db collection name, fields name and fields type
In todo model update collection name, fields name and fields type
collection_name = 'todos' # collection name
fields = {
"title" : "string" ,
"body" : "string" ,
"created" : "datatime"
}
Update required fields, optional fields from todo model
create_required_fields = [] # example create_required_fields = ["title", "body"]
create_optional_fields = [] # example create_required_fields = ["created"]
update_required_fields = []
update_optional_fields = []
create_required_fields = ["title" , "body" ]
create_optional_fields = []
update_required_fields = ["title" , "body" ]
update_optional_fields = []
In Database insert, find , find_by_id, update and delete methods are generalize methods.
Those methods are call from model
insert
method store data to database after confirm validation from model
find
method retries all data from mongo database
find_by_id
method retries back a single search data
update
method store updated data to database with corresponding id
and delete
method delete data from database with corresponding id
Request
Endpoint
Details
GET
http://127.0.0.1:5000/todos
Get All
GET
http://127.0.0.1:5000/todos/todo_id
Get Single Id
POST
http://127.0.0.1:5000/todos
Insert One
PUT
http://127.0.0.1:5000/todos/todo_id
Update One
DELETE
http://127.0.0.1:5000/todos/todo_id
Delete One
To see route list type cli flask routes