ожидаемая ошибка объекта, подобного строке или байтам, при сохранении объекта

#python #django

#python #django

Вопрос:

я написал этот код для моделей.py но в shell, когда я пытаюсь сохранить объект из вопроса, появляется эта ошибка :

 Traceback (most recent call last):
  File "<console>", line 1, in <module>
  File "H:virtualEnvsDjango_1libsite-packagesdjangodbmodelsbase.py", line 718, in save
    force_update=force_update, update_fields=update_fields)
  File "H:virtualEnvsDjango_1libsite-packagesdjangodbmodelsbase.py", line 748, in save_base
    updated = self._save_table(raw, cls, force_insert, force_update, using, update_fields)
  File "H:virtualEnvsDjango_1libsite-packagesdjangodbmodelsbase.py", line 831, in _save_table
    result = self._do_insert(cls._base_manager, using, fields, update_pk, raw)
  File "H:virtualEnvsDjango_1libsite-packagesdjangodbmodelsbase.py", line 869, in _do_insert
    using=using, raw=raw)
  File "H:virtualEnvsDjango_1libsite-packagesdjangodbmodelsmanager.py", line 82, in manager_method
    return getattr(self.get_queryset(), name)(*args, **kwargs)
  File "H:virtualEnvsDjango_1libsite-packagesdjangodbmodelsquery.py", line 1136, in _insert
    return query.get_compiler(using=using).execute_sql(return_id)
  File "H:virtualEnvsDjango_1libsite-packagesdjangodbmodelssqlcompiler.py", line 1288, in execute_sql
    for sql, params in self.as_sql():
  File "H:virtualEnvsDjango_1libsite-packagesdjangodbmodelssqlcompiler.py", line 1241, in as_sql
    for obj in self.query.objs
  File "H:virtualEnvsDjango_1libsite-packagesdjangodbmodelssqlcompiler.py", line 1241, in <listcomp>
    for obj in self.query.objs
  File "H:virtualEnvsDjango_1libsite-packagesdjangodbmodelssqlcompiler.py", line 1240, in <listcomp>
    [self.prepare_value(field, self.pre_save_val(field, obj)) for field in fields]
  File "H:virtualEnvsDjango_1libsite-packagesdjangodbmodelssqlcompiler.py", line 1182, in prepare_value
    value = field.get_db_prep_save(value, connection=self.connection)
  File "H:virtualEnvsDjango_1libsite-packagesdjangodbmodelsfields__init__.py", line 790, in get_db_prep_save
    return self.get_db_prep_value(value, connection=connection, prepared=False)
  File "H:virtualEnvsDjango_1libsite-packagesdjangodbmodelsfields__init__.py", line 1429, in get_db_prep_value
    value = self.get_prep_value(value)
  File "H:virtualEnvsDjango_1libsite-packagesdjangodbmodelsfields__init__.py", line 1408, in get_prep_value
    value = super().get_prep_value(value)
  File "H:virtualEnvsDjango_1libsite-packagesdjangodbmodelsfields__init__.py", line 1268, in get_prep_value
    return self.to_python(value)
  File "H:virtualEnvsDjango_1libsite-packagesdjangodbmodelsfields__init__.py", line 1369, in to_python
    parsed = parse_datetime(value)
  File "H:virtualEnvsDjango_1libsite-packagesdjangoutilsdateparse.py", line 106, in parse_datetime
    match = datetime_re.match(value)

TypeError: expected string or bytes-like object
  

и это мои модели.py-коды :

 from django.db import models
from django.utils import timezone
class Question(models.Model):
    text=models.CharField(max_length=300)
    pub_date=models.DateTimeField(default=timezone.now)
    def __str__(self):
        return self.text
class Choice(models.Model):
    question=models.ForeignKey(Question,on_delete=models.CASCADE)
    text=models.CharField(max_length=300)
    vote=models.IntegerField(default=0)
    def __str__(self):
        return self.text
  

Комментарии:

1. Где код, который вызывает ошибку?

2. я исправил это. Я должен ввести: timezone.now()