2016-06-25 16:32:56 +00:00
|
|
|
from django.db import models
|
|
|
|
|
|
|
|
|
|
|
|
class Book(models.Model):
|
|
|
|
title = models.CharField(max_length=50)
|
|
|
|
author = models.CharField(max_length=50)
|
2022-02-03 19:24:19 +00:00
|
|
|
pages = models.IntegerField(db_column="page_count")
|
|
|
|
shortcut = models.CharField(max_length=50, db_tablespace="idx_tbls")
|
|
|
|
isbn = models.CharField(max_length=50, db_tablespace="idx_tbls")
|
2019-07-05 12:15:41 +00:00
|
|
|
barcode = models.CharField(max_length=31)
|
2017-03-17 15:25:12 +00:00
|
|
|
|
2017-06-07 14:13:12 +00:00
|
|
|
class Meta:
|
2017-09-17 06:26:18 +00:00
|
|
|
indexes = [
|
2022-02-03 19:24:19 +00:00
|
|
|
models.Index(fields=["title"]),
|
|
|
|
models.Index(fields=["isbn", "id"]),
|
|
|
|
models.Index(
|
|
|
|
fields=["barcode"], name="%(app_label)s_%(class)s_barcode_idx"
|
|
|
|
),
|
2017-09-17 06:26:18 +00:00
|
|
|
]
|
2017-06-07 14:13:12 +00:00
|
|
|
|
2017-03-17 15:25:12 +00:00
|
|
|
|
|
|
|
class AbstractModel(models.Model):
|
|
|
|
name = models.CharField(max_length=50)
|
2019-07-05 12:15:41 +00:00
|
|
|
shortcut = models.CharField(max_length=3)
|
2017-03-17 15:25:12 +00:00
|
|
|
|
|
|
|
class Meta:
|
|
|
|
abstract = True
|
2019-07-05 12:15:41 +00:00
|
|
|
indexes = [
|
2022-02-03 19:24:19 +00:00
|
|
|
models.Index(fields=["name"]),
|
|
|
|
models.Index(fields=["shortcut"], name="%(app_label)s_%(class)s_idx"),
|
2019-07-05 12:15:41 +00:00
|
|
|
]
|
2017-03-17 15:25:12 +00:00
|
|
|
|
|
|
|
|
|
|
|
class ChildModel1(AbstractModel):
|
|
|
|
pass
|
|
|
|
|
|
|
|
|
|
|
|
class ChildModel2(AbstractModel):
|
|
|
|
pass
|