Мой администратор проекта работал нормально, но, поскольку я работал над связыванием изображений с объектами моей модели, возникает эта ошибка. Конкретный код ошибки часто встречается при работе с моделями, но ни один из тех, что я видел, не адресован конкретному сайту администратора.
До сих пор я пытался выполнить новую миграцию с новым классом, которая прошла нормально,а также удаление некоторых полей администратора.
models.py Модель автомобиля Я многое пропустил, но ничего не изменил со времени его последней работы.
class Car(models.Model):
manufacturer = models.ForeignKey('Manufacturer', on_delete=models.SET_NULL, null=True)
car_model = models.CharField('Model', max_length=50, null=True)
description = models.TextField(max_length=4000)
vin = models.CharField('VIN', max_length=17, help_text='Enter the 17 character VIN number.', blank=True, null=True)
mileage = models.IntegerField(verbose_name='Mileage')
car_images = models.ImageField(help_text='Upload pictures', upload_to=image_directory_path, storage=image_storage)
date_added = models.DateTimeField(auto_now_add=True)
engine_displacement = models.CharField(default=2.0, max_length=3, help_text="Engine displacement in Liters (E.g. 2.0, 4.2, 6.3)")
price = models.IntegerField(default=0)
seller = models.ForeignKey(User, on_delete=models.SET_NULL, null=True, blank=True)
id = models.UUIDField(primary_key=True, default=uuid.uuid4,
help_text="Unique ID for this car")
...
class Meta:
ordering = ['date_added']
permissions = (("can_change_availability", "Mark car as sold"),)
def __str__(self):
return f'{self.manufacturer} {self.car_model}'
def get_absolute_url(self):
return reverse('showroom:car-detail', args=[str(self.pk)])
admin.py код
@admin.register(Car)
class CarAdmin(admin.ModelAdmin):
list_display = ('manufacturer', 'model', 'model_year', 'mileage', 'status', 'date_added', 'price', 'seller')
list_filter = ('manufacturer', 'status', 'transmission')
fieldsets = (
('General information', {
'fields': ('car_images', 'manufacturer', 'model',
'model_year', 'price', 'vin', 'mileage', 'transmission', 'engine_displacement',
'forced_induction', 'drivetrain', 'description', 'id',)
}),
('Availability', {
'fields': ('status', 'seller')
}),
)
Это ошибка шаблона
Template error:
In template C:\Users\USER\Envs\torque\lib\site-packages\django\contrib\admin\templates\admin\base.html, error at line 62
int() argument must be a string, a bytes-like object or a number, not 'Car'
52 : {% endblock %}
53 : </div>
54 : {% endif %}
55 : {% endblock %}
56 : {% block nav-global %}{% endblock %}
57 : </div>
58 : <!-- END Header -->
59 : {% block breadcrumbs %}
60 : <div class="breadcrumbs">
61 : <a href="{% url 'admin:index' %}">{% trans 'Home' %}</a>
62 : {% if title %} › {{ title }}{% endif %}
63 : </div>
64 : {% endblock %}
65 : {% endif %}
66 :
67 : {% block messages %}
68 : {% if messages %}
69 : <ul class="messagelist">{% for message in messages %}
70 : <li{% if message.tags %} class="{{ message.tags }}"{% endif %}>{{ message|capfirst }}</li>
71 : {% endfor %}</ul>
72 : {% endif %}
...
During handling of the above exception ('manufacturer'), another exception occurred:
...
Exception Type: TypeError at /admin/showroom/car/
Exception Value: int() argument must be a string, a bytes-like object or a number, not 'Car'