Можно ли написать модель Django с полем, которое использует функцию PostgreSQL в качестве значения по умолчанию? Вот простой пример использования txid_current () в качестве значения по умолчанию:
% psql
mydb=# CREATE TABLE test (
label text default '',
txid BIGINT DEFAULT txid_current()
);
CREATE TABLE
mydb=# \d test
Table "public.test"
Column | Type | Modifiers
--------+--------+------------------------
label | text | default ''::text
txid | bigint | default txid_current()
mydb=# INSERT INTO test (label) VALUES ('mylabel');
INSERT 0 1
mydb=# select * from test;
label | txid
---------+--------
mylabel | 192050
(1 row)
Модель Django для этой таблицы может выглядеть как
class Test(models.Model):
label = TextField('Label', default='')
txid = BigIntegerField('txid', default=???)
Есть ли способ указать функцию базы данных в качестве значения по умолчанию или мне нужно добавить значение по умолчанию в PostgreSQL как отдельный шаг после запуска syncdb?