ColdSpirit: Хорошо - вынесите get_my_id() в отдельную процедуру перед описанием класса, и обращайтесь просто как к процедуре: content = RichTextUploadingField( verbose_name="Текст", page_id=get_my_id() )
ColdSpirit: хотите сделать это на уровне модели - объявите метод get_my_id как @classmethod, в котором вы будете получать свой уникальный id. Затем при сохранении формы просто копируйте этот id в поле my_id.
ColdSpirit: Добавили у себя в модели поле. Например my_id. Перед созданием объекта сгенерировали себе уникальный id, и при создании самого объекта копируйте этот id в my_id поле объекта. Далее обращаетесь к этому полю (my_id) как ключевому. Я не пойму в чем именно тут сложности?
av_tyschenko: Ну 100% точности определения факта прочтения в любом случае не получите. Если у пользователя стоит запрет на открытие картинок или там на инициализацию любых исходящих запросов. Просто вариант с картинкой - самый эффективный и безопасный в данном случае.
АртемЪ: А причем тут SMART? Я так понял проблемы начались после диагностики. А вот если с диском начинаются проблемы - Windows вполне может переключить диск в режим PIO.
Владимир Куц
@fox_12 Автор вопроса, куратор тега Python
Это все понятно. Но как избавиься от главной проблемы - от необходимости дебажить код в IDE и в консоли отдельно. К тому же в IDE все работает замечательно - без лишнего огорода с кодировками. Что делает IDE, что позволяет решать проблемы с юникодом? В Spyder тоже общеизвестные проблемы с юникодом встречаются, но их на порядок меньше, чем при работе с консоли. Вот этих проблем с консолью и хочется избежать.
Владимир Куц
@fox_12 Автор вопроса, куратор тега Python
В данном случае он валится на записи юникодной строки в csv. Но я специально куски кода не привожу, потому что та же самая проблема возникает и в другом скрипте при печати на экран. В Spyder все замечательно - юникод печатается, в консоли валится с ошибками. Понятно что можно заново переписать скрипт, принудительно перекодировать строки и пр. Но во-первых дебажить код сначала в spyder, а потом в консоли как минимум неудобно. Ну и во-вторых вместе с тем сам Spyder почему-то все корректно отрабатывает, хотя использует тот же скрипт и ту же версию Питона - т.е. таки каким-то образом проблема решается. Да и в-третьих хотелось бы обойтись без переписывания самих скриптов.
Вот хотелось бы добиться такого же поведения и от работы в консоли, и самое главное - разобраться в причинах такого поведения.