PositiveIntegerField - Django Models - GeeksforGeeks

12 Feb, 2020
PositiveIntegerField is a integer number represented in Python by a int instance. This field is like a IntegerField but must be either positive or zero (0). The default form widget for this field is a NumberInput when localize is False or TextInput otherwise. It supports values from 0 to 2147483647 are safe in all databases supported by Django.It uses MinValueValidator and MaxValueValidator to validate the input based on the values that the default database supports.
Syntax:
field_name = models.PositiveIntegerField(**options)
Illustration of PositiveIntegerField using an Example. Consider a project named geeksforgeeks having an app named geeks.
Refer to the following articles to check how to create a project and an app in Django.
How to Create a Basic Project using MVT in Django?
How to Create an App in Django ?
Enter the following code into models.py file of geeks app.
from django.db import modelsfrom django.db.models import Model# Create your models here.  class GeeksModel(Model):    geeks_field = models.PositiveIntegerField()
Add the geeks app to INSTALLED_APPS
# Application definition  INSTALLED_APPS = [    'django.contrib.admin',    'django.contrib.auth',    'django.contrib.contenttypes',    'django.contrib.sessions',    'django.contrib.messages',    'django.contrib.staticfiles',    'geeks',]
Now when we run makemigrations command from the terminal,
Python manage.py makemigrations
A new folder named migrations would be created in geeks directory with a file named 0001_initial.py
# Generated by Django 2.2.5 on 2019-09-25 06:00  from django.db import migrations, models  class Migration(migrations.Migration):      initial = True      dependencies = [    ]      operations = [        migrations.CreateModel(            name ='GeeksModel',            fields =[                ('id',                   models.AutoField(                  auto_created = True,                  primary_key = True,                  serialize = False,                   verbose_name ='ID'                )),                ('geeks_field',                   models.PositiveIntegerField()),            ],        ),    ]
Now run,
Python manage.py migrate
Thus, an geeks_field PositiveIntegerField is created when you run migrations on the project. It is a field to store positive integer numbers.
PositiveIntegerField is used for storing a integer number represented in Python by a int instance. To know more about int, visit Python | int() function. Let’s try to save a positive number in PositiveIntegerField.
# importing the model# from geeks appfrom geeks.models import GeeksModel  # creating an instance of# intd = int(2189)  # creating a instance of # GeeksModelgeek_object = GeeksModel.objects.create(geeks_field = d)geek_object.save()
Now let’s check it in admin server. We have created an instance of GeeksModel.
Field Options are the arguments given to each field for applying some constraint or imparting a particular characteristic to a particular Field. For example, adding an argument null = True to PositiveIntegerField will enable it to store empty values for that table in relational database.Here are the field options and attributes that an PositiveIntegerField can use.
NaveenArora
Django-models
Python Django
Python
Writing code in comment?
Please use ide.geeksforgeeks.org,
generate link and share the link here.
sum() function in Python
Python String | replace()
Defaultdict in Python
Python Dictionary
How to Install PIP on Windows ?
Deque in Python
Different ways to create Pandas Dataframe
*args and **kwargs in Python
Stack in Python
Bar Plot in Matplotlib