It might look like:
{{{
class MyModel(db.Models):
# fields go here
class Meta:
storage_options = {
"autovacuum_vacuum_scale_factor": 0.01,
"autovacuum_vacuum_threshold": 1000
}
}}}
and that would produce migration which eventually will run sql like this:
`CREATE TABLE mymodel WITH (autovacuum_vacuum_scale_factor = 0.01,
autovacuum_vacuum_threshold = 1000);`
For now it could be done with `RunSQL(sql='ALTER TABLE .... WITH (...);')`
migration, but it would be better to have the settings on the model class
itself for better visibility and managed by django.
What do you think ?
--
Ticket URL: <https://code.djangoproject.com/ticket/34843>
Django <https://code.djangoproject.com/>
The Web framework for perfectionists with deadlines.
Old description:
> There is a list of storage options
> (https://www.postgresql.org/docs/current/sql-createtable.html#SQL-
> CREATETABLE-STORAGE-PARAMETERS) that can be applied when creating a table
> in postgres database. So, since django manages database schema, it would
> be nice to extend it to support these storage options.
>
> It might look like:
>
> {{{
> class MyModel(db.Models):
>
> # fields go here
>
> class Meta:
> storage_options = {
> "autovacuum_vacuum_scale_factor": 0.01,
> "autovacuum_vacuum_threshold": 1000
> }
>
> }}}
>
> and that would produce migration which eventually will run sql like this:
>
> `CREATE TABLE mymodel WITH (autovacuum_vacuum_scale_factor = 0.01,
> autovacuum_vacuum_threshold = 1000);`
>
> For now it could be done with `RunSQL(sql='ALTER TABLE .... WITH
> (...);')` migration, but it would be better to have the settings on the
> model class itself for better visibility and managed by django.
>
> What do you think ?
New description:
There is a list of storage options
(https://www.postgresql.org/docs/current/sql-createtable.html#SQL-
CREATETABLE-STORAGE-PARAMETERS) that can be applied when creating a table
in postgres database. So, since django manages database schema, it would
be nice to extend it to support these storage options.
It might look like:
{{{
class MyModel(models.Model):
# fields go here
class Meta:
storage_options = {
"autovacuum_vacuum_scale_factor": 0.01,
"autovacuum_vacuum_threshold": 1000
}
}}}
and that would produce migration which eventually will run sql like this:
`CREATE TABLE mymodel WITH (autovacuum_vacuum_scale_factor = 0.01,
autovacuum_vacuum_threshold = 1000);`
For now it could be done with `RunSQL(sql='ALTER TABLE .... WITH (...);')`
migration, but it would be better to have the settings on the model class
itself for better visibility and managed by django.
What do you think ?
--
--
Ticket URL: <https://code.djangoproject.com/ticket/34843#comment:1>
Old description:
> There is a list of storage options
> (https://www.postgresql.org/docs/current/sql-createtable.html#SQL-
> CREATETABLE-STORAGE-PARAMETERS) that can be applied when creating a table
> in postgres database. So, since django manages database schema, it would
> be nice to extend it to support these storage options.
>
> It might look like:
>
> {{{
New description:
It might look like:
{{{
class MyModel(models.Model):
# fields go here
}}}
`CREATE/ALTER TABLE mymodel WITH (autovacuum_vacuum_scale_factor = 0.01,
autovacuum_vacuum_threshold = 1000);`
For now it could be done with `RunSQL(sql='ALTER TABLE .... WITH (...);')`
migration, but it would be better to have the settings on the model class
itself for better visibility and managed by django.
What do you think ?
--
--
Ticket URL: <https://code.djangoproject.com/ticket/34843#comment:2>
Old description:
> `CREATE/ALTER TABLE mymodel WITH (autovacuum_vacuum_scale_factor = 0.01,
> autovacuum_vacuum_threshold = 1000);`
>
> For now it could be done with `RunSQL(sql='ALTER TABLE .... WITH
> (...);')` migration, but it would be better to have the settings on the
> model class itself for better visibility and managed by django.
>
> What do you think ?
New description:
There is a list of storage options
(https://www.postgresql.org/docs/current/sql-createtable.html#SQL-
CREATETABLE-STORAGE-PARAMETERS) that can be applied when creating a table
in postgres database. So, since django manages database schema, it would
be nice to extend it to support these storage options.
It might look like:
{{{
class MyModel(models.Model):
# fields go here
class Meta:
storage_options = {
"autovacuum_vacuum_scale_factor": 0.01,
"autovacuum_vacuum_threshold": 1000
}
}}}
and that would produce migration which eventually will run sql like this:
`CREATE/ALTER TABLE mymodel WITH (autovacuum_vacuum_scale_factor = 0.01,
autovacuum_vacuum_threshold = 1000);`
For now it could be done with `RunSQL(sql='CREATE/ALTER TABLE .... WITH
(...);')` migration, but it would be better to have the settings on the
model class itself for better visibility and managed by django.
What do you think ?
--
--
Ticket URL: <https://code.djangoproject.com/ticket/34843#comment:3>
* status: new => closed
* resolution: => wontfix
Comment:
Hi Anton,
Thanks for the idea, though all feature requests should be discussed on
the Django forum first where it'll reach a wider audience:
https://code.djangoproject.com/wiki/DevelopersMailingList
Having said that, it may be unlikely to be accepted since developers can
add their own migration to set these parameters after table creation.
Additionally it is likely to be considered outside the scope of what
Django is responsible for.
Thanks!
--
Ticket URL: <https://code.djangoproject.com/ticket/34843#comment:4>