Python Mongodb
  • Mongodb কি ?
  • এনভার্নমেন্ট তৈরী :
  • mongodbCompass কি :
    • mongodb compass কানেক্ট এরর :
  • pymongo :
  • mongoengine
    • 01.Connecting With Database
    • 02 Create Document.ipynb
    • 03 Fields
    • 04 FieldValidation
    • 05.Document Relationship One To One
    • 06 Document Relationship One To Many
    • 07 Document Relationship Many To Many
  • MongoDB Atlas
    • Setup
Powered by GitBook
On this page
  • Simple Validation
  • Custom Validation
  1. mongoengine

04 FieldValidation

from mongoengine import *
connect(db='Employee')

Simple Validation

class Employee(Document):
    emp_id = LongField(primary_key=True)
    first_name = StringField(required=True)
    last_name= StringField(required=True)
    email = EmailField(unique=True)    
    birth_date=DateField()   
    salary = DecimalField()
    
emp2= Employee(emp_id=3,first_name='Ayat',last_name='Baby',email='ayat@gmail.com',birth_date='01/01/2024',salary=10000)
emp2.save()   

Custom Validation

from datetime import datetime
def check_date(b_date):
    delta = datetime.today()-datetime.strptime(b_date,'%d/%m/%Y')
    if(delta.days/365) > 30:
        raise ValidationError('TO Old')
        
class Contacts(Document):
    first_name = StringField()
    last_name= StringField(required=True,unique_with='first_name') # unique_with
    email = EmailField(unique=True)
    birth_date=DateField(default=datetime.today(),validation=check_date)  # custom validation and default    
    
                     
contact1=Contacts(first_name='mim',last_name='Mahmuda MImjhg',email='emaildssdd@gmail.com',birth_date='01/01/1995')
contact1.save()                                                       
Previous03 FieldsNext05.Document Relationship One To One

Last updated 1 year ago