Ошибка "целое вне диапазона" возникает, когда значение поля превышает максимальное или минимальное значение, которое может быть сохранено в базе данных. В вашей модели товаров присутствует поле "price", которое определено как целое число (IntegerField).
Ошибка может возникать если вы пытаетесь сохранить значение, которое превышает максимальное значение, которое поддерживается типом данных целого числа в PostgreSQL.
В PostgreSQL тип данных "integer" может хранить значения от -2147483648 до +2147483647. Если вы пытаетесь сохранить значение, которое выходит за этот диапазон, вы получите ошибку "целое вне диапазона".
Если вам необходимо хранить значения, которые выходят за этот диапазон, вы можете использовать тип данных "bigint" вместо "integer". В Django вы можете использовать модельное поле BigAutoField вместо IntegerField для соответствующего поля.
В вашем коде вы уже используете BigAutoField для поля "id". Вы можете продолжить использовать BigAutoField для поля "price" или изменить его тип данных на BigIntegerField, чтобы избежать ошибки "целое вне диапазона".
Вот исправленный код:
```python
from django.db import models
class products(models.Model):
id = models.BigAutoField(primary_key=True, name='id')
title = models.CharField(name='title', verbose_name='Название товара', max_length=50, blank=False)
description = models.TextField(name='description', verbose_name='Описание', max_length=200, blank=False)
header = models.ImageField(name='header', verbose_name='Картинка', upload_to='first/files/images', default=None, blank=False)
price = models.BigIntegerField(name='price', verbose_name='Цена', default=100, blank=False)
command = models.CharField(name='command', verbose_name='Команда для сервера', max_length=50, blank=False, default='')
def __str__(self):
return self.title
class Meta:
verbose_name='Товар'
verbose_name_plural='Товары'
```
После внесения этих изменений вы больше не должны сталкиваться с ошибкой "целое вне диапазона" при добавлении товара на ваш сайт на Django.