В настоящее время лучший ответ для Как Django UUIDField генерирует UUID в Postgresql? говорит
Когда вы используете UUIDField
в качестве первичного ключа в Django, он не генерирует для вас UUID, вы генерируете его самостоятельно перед сохранением объекта
Но я думаю, что возможно взломать решение, которое позволяет использовать на основе БД Генерация UUID.
После того, как вы установили uuid-ossp
расширение в postgres
CREATE EXTENSION IF NOT EXISTS "uuid-ossp";
, я думаю, что оно должно работать более или менее как AutoField
.
Если для создания таблицы использовался необработанный sql
CREATE TABLE example(
id UUID PRIMARY KEY DEFAULT uuid_generate_v4(),
);
, тогда необработанная вставка вернет новый случайный UUID в качестве поля идентификатора.
Как можно go о создании пользовательский Field
, поэтому это исходное решение работает с Django ORM?