2012-06-18 18:32:03 +02:00
|
|
|
from django.db import models
|
|
|
|
|
|
|
|
# Because we want to test creation and deletion of these as separate things,
|
|
|
|
# these models are all marked as unmanaged and only marked as managed while
|
|
|
|
# a schema test is running.
|
|
|
|
|
|
|
|
|
|
|
|
class Author(models.Model):
|
|
|
|
name = models.CharField(max_length=255)
|
2012-09-07 21:40:59 +02:00
|
|
|
height = models.PositiveIntegerField(null=True, blank=True)
|
2012-06-18 18:32:03 +02:00
|
|
|
|
|
|
|
class Meta:
|
2012-09-22 01:47:04 +02:00
|
|
|
auto_register = False
|
2012-06-18 18:32:03 +02:00
|
|
|
|
|
|
|
|
2012-08-02 16:08:39 +02:00
|
|
|
class AuthorWithM2M(models.Model):
|
|
|
|
name = models.CharField(max_length=255)
|
|
|
|
|
|
|
|
class Meta:
|
2012-09-22 01:47:04 +02:00
|
|
|
auto_register = False
|
2012-08-02 16:08:39 +02:00
|
|
|
|
|
|
|
|
2012-06-18 18:32:03 +02:00
|
|
|
class Book(models.Model):
|
|
|
|
author = models.ForeignKey(Author)
|
2012-08-31 00:11:56 +02:00
|
|
|
title = models.CharField(max_length=100, db_index=True)
|
2012-06-18 18:32:03 +02:00
|
|
|
pub_date = models.DateTimeField()
|
2012-08-02 16:08:39 +02:00
|
|
|
#tags = models.ManyToManyField("Tag", related_name="books")
|
2012-06-18 18:32:03 +02:00
|
|
|
|
|
|
|
class Meta:
|
2012-09-22 01:47:04 +02:00
|
|
|
auto_register = False
|
2012-08-02 16:08:39 +02:00
|
|
|
|
|
|
|
|
2012-09-07 20:39:22 +02:00
|
|
|
class BookWithM2M(models.Model):
|
|
|
|
author = models.ForeignKey(Author)
|
|
|
|
title = models.CharField(max_length=100, db_index=True)
|
|
|
|
pub_date = models.DateTimeField()
|
|
|
|
tags = models.ManyToManyField("Tag", related_name="books")
|
|
|
|
|
|
|
|
class Meta:
|
2012-09-22 01:47:04 +02:00
|
|
|
auto_register = False
|
2012-09-07 20:39:22 +02:00
|
|
|
|
|
|
|
|
2012-09-07 18:51:11 +02:00
|
|
|
class BookWithSlug(models.Model):
|
|
|
|
author = models.ForeignKey(Author)
|
|
|
|
title = models.CharField(max_length=100, db_index=True)
|
|
|
|
pub_date = models.DateTimeField()
|
|
|
|
slug = models.CharField(max_length=20, unique=True)
|
|
|
|
|
|
|
|
class Meta:
|
2012-09-22 01:47:04 +02:00
|
|
|
auto_register = False
|
2012-09-07 18:51:11 +02:00
|
|
|
db_table = "schema_book"
|
|
|
|
|
|
|
|
|
2012-08-02 16:08:39 +02:00
|
|
|
class Tag(models.Model):
|
|
|
|
title = models.CharField(max_length=255)
|
|
|
|
slug = models.SlugField(unique=True)
|
2012-08-10 13:38:18 +02:00
|
|
|
|
|
|
|
class Meta:
|
2012-09-22 01:47:04 +02:00
|
|
|
auto_register = False
|
2012-08-10 13:38:18 +02:00
|
|
|
|
|
|
|
|
2012-08-18 15:00:42 +02:00
|
|
|
class TagUniqueRename(models.Model):
|
|
|
|
title = models.CharField(max_length=255)
|
|
|
|
slug2 = models.SlugField(unique=True)
|
|
|
|
|
|
|
|
class Meta:
|
2012-09-22 01:47:04 +02:00
|
|
|
auto_register = False
|
2012-08-18 15:00:42 +02:00
|
|
|
db_table = "schema_tag"
|
|
|
|
|
|
|
|
|
2012-08-10 13:38:18 +02:00
|
|
|
class UniqueTest(models.Model):
|
|
|
|
year = models.IntegerField()
|
|
|
|
slug = models.SlugField(unique=False)
|
|
|
|
|
|
|
|
class Meta:
|
2012-09-22 01:47:04 +02:00
|
|
|
auto_register = False
|
2012-08-10 13:38:18 +02:00
|
|
|
unique_together = ["year", "slug"]
|