170 похожих чатов

Всем доброго времени суток! Подскажите что я делаю не так?

есть модель https://pastebin.com/aNFKTNDb.
запись добавляется все нормально, однако когда я делаю doctype = Dicti.objects.get(pk=1) у меня выходить ошибка преобразования даты
>>> doctype = Dicti.objects.get(pk=1)
Traceback (most recent call last):
File "<console>", line 1, in <module>
File "/home/alexander/repos/AIO/venv/lib64/python3.9/site-packages/django/db/models/manager.py", line 85, in manager_method
return getattr(self.get_queryset(), name)(*args, **kwargs)
File "/home/alexander/repos/AIO/venv/lib64/python3.9/site-packages/django/db/models/query.py", line 425, in get
num = len(clone)
File "/home/alexander/repos/AIO/venv/lib64/python3.9/site-packages/django/db/models/query.py", line 269, in __len__
self._fetch_all()
File "/home/alexander/repos/AIO/venv/lib64/python3.9/site-packages/django/db/models/query.py", line 1308, in _fetch_all
self._result_cache = list(self._iterable_class(self))
File "/home/alexander/repos/AIO/venv/lib64/python3.9/site-packages/django/db/models/query.py", line 53, in __iter__
results = compiler.execute_sql(chunked_fetch=self.chunked_fetch, chunk_size=self.chunk_size)
File "/home/alexander/repos/AIO/venv/lib64/python3.9/site-packages/django/db/models/sql/compiler.py", line 1156, in execute_sql
cursor.execute(sql, params)
File "/home/alexander/repos/AIO/venv/lib64/python3.9/site-packages/django/db/backends/utils.py", line 98, in execute
return super().execute(sql, params)
File "/home/alexander/repos/AIO/venv/lib64/python3.9/site-packages/django/db/backends/utils.py", line 66, in execute
return self._execute_with_wrappers(sql, params, many=False, executor=self._execute)
File "/home/alexander/repos/AIO/venv/lib64/python3.9/site-packages/django/db/backends/utils.py", line 75, in _execute_with_wrappers
return executor(sql, params, many, context)
File "/home/alexander/repos/AIO/venv/lib64/python3.9/site-packages/django/db/backends/utils.py", line 84, in _execute
return self.cursor.execute(sql, params)
File "/home/alexander/repos/AIO/venv/lib64/python3.9/site-packages/django/db/backends/sqlite3/base.py", line 413, in execute
return Database.Cursor.execute(self, query, params)
File "/usr/lib64/python3.9/sqlite3/dbapi2.py", line 64, in convert_date
return datetime.date(*map(int, val.split(b"-")))
ValueError: invalid literal for int() with base 10: b'10 05:32:05.603594'

11 ответов

20 просмотров

по ошибке не подскажу, а в моделе зачем ты на 12 строке if делаешь а потом его повторяешь на 13 строке? Два if делают одно и тоже, вот хорошая реализация Timestamped, можешь просто использовать этот модуль https://github.com/audiolion/django-behaviors#timestamped-behavior

Александр-Попов Автор вопроса

я это делаю наперед мне в будущем понадобится символьная переменная обозначающая тип операции. Поэтому я с помощью тернарного оператора его запоминаю а потом по ней ифом прохожусь.

ты всегда можешь спросить if self.pk да - обновление; нет - запись; в методе save() в моделе

кстати я не уверен но возможно ошибка из-за такой записи? self.updated = django.utils.timezone.now() Почему не вынести в импорт from django.utils import timezone self.updated = timezone.now()

Александр-Попов Автор вопроса

Да, но "operation" гораздо меньше символов чем "('I' if self.pk else 'U')"

Александр-Попов Автор вопроса

Ок проверю спасибо

лишние ифы зло

Александр-Попов Автор вопроса

Неа все равно та же самая ошибка

твоя ошибка говорит о том что он не может строчку в число преобразовать, ищи где-то не те типы используешь/передаешь

Александр-Попов Автор вопроса

Гыыы миграции почему-то в первый раз не прошлись 🤦🏿 спасибо за помощь

👍👍

Похожие вопросы

Обсуждают сегодня

а через ESC-код ?
Alexey Kulakov
29
30500 за редактор? )
Владимир
47
Чёт не понял, я ж правильной функцией воспользовался чтобы вывести отладочную информацию? но что-то она не ловится
notme
18
У меня есть функция где происходит это: write_bit(buffer, 1); write_bit(buffer, 0); write_bit(buffer, 1); write_bit(buffer, 1); write_bit(buffer, 1); w...
~
13
Недавно Google Project Zero нашёл багу в SQLite с помощью LLM, о чём достаточно было шумно в определённых интернетах, которые сопровождались рассказами, что скоро всех "ибешни...
Alex Sherbakov
5
Как передать управляющий символ в открытую через CreateProcess консоль? Собсна, есть процедура: procedure TRedirectThread.WriteData(Data: OEMString); var Written: Cardinal;...
Serjone
6
program test; {$mode delphi} procedure proc(v: int32); overload; begin end; procedure proc(v: int64); overload; begin end; var x: uint64; begin proc(x); end. Уж не знаю...
notme
6
Ребят в СИ можно реализовать ООП?
Николай
33
у вас два процесса. один посылает другому сигнал. у вас есть код обоих процессов? если всё не так - расскажите как оно на самом деле. а именно кто кому чего, есть-ли консоли,...
Karagy
6
вы делали что-то подобное и как? может есть либы готовые? увидел картинку нокода, где всё линиями соединено и стало интересно попробовать то же в ddl на lua сделать. решил с ч...
Victor
8
Карта сайта