Yes, it is actually correct, but I'd just like to force uuid generation at
database level (postgres supports it) and not via python/django
I can modify the table with raw sql after migration and disable
inside django models, but I'm looking for a better way to accomplish it
Il giorno mercoledì 19 ottobre 2016 02:14:23 UTC+2, Tim Graham ha scritto:
> The SQL looks correct -- it's not using anything Python related. Are you
> encountering some error?
> On Tuesday, October 18, 2016 at 9:15:46 AM UTC-4, Andrea Posi wrote:
>> I'm creating a rest api using Django and DRF. I don't want to expose IDs
>> directly to clients so I'm trying to setup my models like this example:
>> class AbstractGuidModel(models.Model):
>> uuid = models.UUIDField(blank=True, default=uuid.uuid4, unique=True,
>> class Meta:
>> abstract = True
>> class MyModel(AbstractGuidModel):
>> name = models.CharField(max_length=NAME_LENGTH)
>> Since the AbstractGuidModel has default=uuid.uuid4, uuid are generated by
>> python code and migrations look like:
>> CREATE TABLE "MyModel" ( ... "uuid" uuid NOT NULL UNIQUE, ... );
>> I've read Postgres has an extension for generating automatically uuids.
>> Once extension is installed, how can I tell django to let database use
>> his own extension and not letting him create them with the Python uuid
You received this message because you are subscribed to the Google Groups
"Django users" group.
To unsubscribe from this group and stop receiving emails from it, send an email
To post to this group, send email to email@example.com.
Visit this group at https://groups.google.com/group/django-users.
To view this discussion on the web visit
For more options, visit https://groups.google.com/d/optout.