Перебирая ошибку ниже, не совсем уверен, что не так. В модале отсутствовало поле телефона, которое я не заметил до запуска python manage.py migrate. Теперь, когда я пытаюсь запустить сервер, я получаю сообщение об ошибке ниже. Я внес изменения в модал (добавил поле телефона) и попытался запустить python manage.py migrate. Я думал, что это перенастроится, но не повезло. Получение той же ошибки, что и ниже.

    contacts - models.py: 

    from django.db import models
    from datetime import datetime

    # Create your models here.
    class Contact(models.Model):
        listing  =  models.CharField(max_length=200)
        listing_id = models.IntegerField()
        name = models.CharField(max_length=200)
        email = models.CharField(max_length=200)
        phone = models.CharField(max_length=200)
        message = models.TextField(blank=True)
        contact_date = models.DateField(default = datetime.now, blank = True)
        user_id = models.IntegerField(blank=True)
        def __str__(self):
            return self.name

contacts - admin.py - 

from django.contrib import admin

# Register your models here.
from .models import Contact



class ContactAdmin(admin.ModelAdmin):
    list_display =('id', 'name', 'listing', 'email' 'contact_date')
    list_diplay_links=('id','name')
    search_fields = ('name', 'email', 'listing')
    list_per_page=25

admin.site.register(Contact, ContactAdmin)


Error logs: 

(venv) User-MBP:btre_project user$ python manage.py runserver
Performing system checks...

Unhandled exception in thread started by <function check_errors.<locals>.wrapperat 0x110c651e0>
Traceback (most recent call last):
  File "/Users/rizwanrenesa/Desktop/btre_project/venv/lib/python3.7/site-packages/django/utils/autoreload.py", line 225, in wrapper
    fn(*args, **kwargs)
  File "/Users/rizwanrenesa/Desktop/btre_project/venv/lib/python3.7/site-packages/django/core/management/commands/runserver.py", line 117, in inner_run
    self.check(display_num_errors=True)
  File "/Users/rizwanrenesa/Desktop/btre_project/venv/lib/python3.7/site-packages/django/core/management/base.py", line 425, in check
    raise SystemCheckError(msg)
django.core.management.base.SystemCheckError: SystemCheckError: System check identified some issues:

ERRORS:
<class 'contacts.admin.ContactAdmin'>: (admin.E108) The value of 'list_display[3]' refers to 'emailcontact_date', which is not a callable, an attribute of 'ContactAdmin', or an attribute or method on 'contacts.Contact'.
0
rrene 2 Дек 2018 в 05:53

1 ответ

Лучший ответ

Вам не хватает запятой между email и contact_date здесь:

list_display =('id', 'name', 'listing', 'email' 'contact_date')

Строковые литералы могут быть объединены в Python, если между ними нет операторов, так что это действует

list_display = ('id', 'name', 'listing', 'emailcontact_date')

На что ссылается сообщение об ошибке.

Добавьте запятую, как

list_display = ('id', 'name', 'listing', 'email', 'contact_date')

И ты уезжаешь на гонки.

(Кстати: этот user_id столбец, вероятно, должен быть ForeignKey для user, а не необработанным идентификатором ...)

3
AKX 2 Дек 2018 в 03:04