0002_create_test_models.py 13 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304
  1. from django.db import migrations, models
  2. from ..fields import (
  3. ArrayField, BigIntegerRangeField, CICharField, CIEmailField, CITextField,
  4. DateRangeField, DateTimeRangeField, DecimalRangeField, EnumField,
  5. HStoreField, IntegerRangeField, SearchVectorField,
  6. )
  7. from ..models import TagField
  8. class Migration(migrations.Migration):
  9. dependencies = [
  10. ('postgres_tests', '0001_setup_extensions'),
  11. ]
  12. operations = [
  13. migrations.CreateModel(
  14. name='CharArrayModel',
  15. fields=[
  16. ('id', models.AutoField(verbose_name='ID', serialize=False, auto_created=True, primary_key=True)),
  17. ('field', ArrayField(models.CharField(max_length=10), size=None)),
  18. ],
  19. options={
  20. 'required_db_vendor': 'postgresql',
  21. },
  22. bases=(models.Model,),
  23. ),
  24. migrations.CreateModel(
  25. name='DateTimeArrayModel',
  26. fields=[
  27. ('id', models.AutoField(verbose_name='ID', serialize=False, auto_created=True, primary_key=True)),
  28. ('datetimes', ArrayField(models.DateTimeField(), size=None)),
  29. ('dates', ArrayField(models.DateField(), size=None)),
  30. ('times', ArrayField(models.TimeField(), size=None)),
  31. ],
  32. options={
  33. 'required_db_vendor': 'postgresql',
  34. },
  35. bases=(models.Model,),
  36. ),
  37. migrations.CreateModel(
  38. name='HStoreModel',
  39. fields=[
  40. ('id', models.AutoField(verbose_name='ID', serialize=False, auto_created=True, primary_key=True)),
  41. ('field', HStoreField(blank=True, null=True)),
  42. ('array_field', ArrayField(HStoreField(), null=True)),
  43. ],
  44. options={
  45. 'required_db_vendor': 'postgresql',
  46. },
  47. bases=(models.Model,),
  48. ),
  49. migrations.CreateModel(
  50. name='OtherTypesArrayModel',
  51. fields=[
  52. ('id', models.AutoField(verbose_name='ID', serialize=False, auto_created=True, primary_key=True)),
  53. ('ips', ArrayField(models.GenericIPAddressField(), size=None, default=list)),
  54. ('uuids', ArrayField(models.UUIDField(), size=None, default=list)),
  55. ('decimals', ArrayField(models.DecimalField(max_digits=5, decimal_places=2), size=None, default=list)),
  56. ('tags', ArrayField(TagField(), blank=True, null=True, size=None)),
  57. ('json', ArrayField(models.JSONField(default={}), default=[])),
  58. ('int_ranges', ArrayField(IntegerRangeField(), null=True, blank=True)),
  59. ('bigint_ranges', ArrayField(BigIntegerRangeField(), null=True, blank=True)),
  60. ],
  61. options={
  62. 'required_db_vendor': 'postgresql',
  63. },
  64. bases=(models.Model,),
  65. ),
  66. migrations.CreateModel(
  67. name='IntegerArrayModel',
  68. fields=[
  69. ('id', models.AutoField(verbose_name='ID', serialize=False, auto_created=True, primary_key=True)),
  70. ('field', ArrayField(models.IntegerField(), size=None)),
  71. ],
  72. options={
  73. 'required_db_vendor': 'postgresql',
  74. },
  75. bases=(models.Model,),
  76. ),
  77. migrations.CreateModel(
  78. name='NestedIntegerArrayModel',
  79. fields=[
  80. ('id', models.AutoField(verbose_name='ID', serialize=False, auto_created=True, primary_key=True)),
  81. ('field', ArrayField(ArrayField(models.IntegerField(), size=None), size=None)),
  82. ],
  83. options={
  84. 'required_db_vendor': 'postgresql',
  85. },
  86. bases=(models.Model,),
  87. ),
  88. migrations.CreateModel(
  89. name='NullableIntegerArrayModel',
  90. fields=[
  91. ('id', models.AutoField(verbose_name='ID', serialize=False, auto_created=True, primary_key=True)),
  92. ('field', ArrayField(models.IntegerField(), size=None, null=True, blank=True)),
  93. (
  94. 'field_nested',
  95. ArrayField(ArrayField(models.IntegerField(), size=None, null=True), size=None, null=True),
  96. ),
  97. ],
  98. options={
  99. 'required_db_vendor': 'postgresql',
  100. },
  101. bases=(models.Model,),
  102. ),
  103. migrations.CreateModel(
  104. name='CharFieldModel',
  105. fields=[
  106. ('id', models.AutoField(verbose_name='ID', serialize=False, auto_created=True, primary_key=True)),
  107. ('field', models.CharField(max_length=16)),
  108. ],
  109. options=None,
  110. bases=None,
  111. ),
  112. migrations.CreateModel(
  113. name='TextFieldModel',
  114. fields=[
  115. ('id', models.AutoField(verbose_name='ID', serialize=False, auto_created=True, primary_key=True)),
  116. ('field', models.TextField()),
  117. ],
  118. options=None,
  119. bases=None,
  120. ),
  121. migrations.CreateModel(
  122. name='SmallAutoFieldModel',
  123. fields=[
  124. ('id', models.SmallAutoField(verbose_name='ID', serialize=False, primary_key=True)),
  125. ],
  126. options=None,
  127. ),
  128. migrations.CreateModel(
  129. name='BigAutoFieldModel',
  130. fields=[
  131. ('id', models.BigAutoField(verbose_name='ID', serialize=False, primary_key=True)),
  132. ],
  133. options=None,
  134. ),
  135. migrations.CreateModel(
  136. name='Scene',
  137. fields=[
  138. ('id', models.AutoField(verbose_name='ID', serialize=False, auto_created=True, primary_key=True)),
  139. ('scene', models.CharField(max_length=255)),
  140. ('setting', models.CharField(max_length=255)),
  141. ],
  142. options=None,
  143. bases=None,
  144. ),
  145. migrations.CreateModel(
  146. name='Character',
  147. fields=[
  148. ('id', models.AutoField(verbose_name='ID', serialize=False, auto_created=True, primary_key=True)),
  149. ('name', models.CharField(max_length=255)),
  150. ],
  151. options=None,
  152. bases=None,
  153. ),
  154. migrations.CreateModel(
  155. name='CITestModel',
  156. fields=[
  157. ('name', CICharField(primary_key=True, max_length=255)),
  158. ('email', CIEmailField()),
  159. ('description', CITextField()),
  160. ('array_field', ArrayField(CITextField(), null=True)),
  161. ],
  162. options={
  163. 'required_db_vendor': 'postgresql',
  164. },
  165. bases=None,
  166. ),
  167. migrations.CreateModel(
  168. name='Line',
  169. fields=[
  170. ('id', models.AutoField(verbose_name='ID', serialize=False, auto_created=True, primary_key=True)),
  171. ('scene', models.ForeignKey('postgres_tests.Scene', on_delete=models.SET_NULL)),
  172. ('character', models.ForeignKey('postgres_tests.Character', on_delete=models.SET_NULL)),
  173. ('dialogue', models.TextField(blank=True, null=True)),
  174. ('dialogue_search_vector', SearchVectorField(blank=True, null=True)),
  175. ('dialogue_config', models.CharField(max_length=100, blank=True, null=True)),
  176. ],
  177. options={
  178. 'required_db_vendor': 'postgresql',
  179. },
  180. bases=None,
  181. ),
  182. migrations.CreateModel(
  183. name='LineSavedSearch',
  184. fields=[
  185. ('id', models.AutoField(verbose_name='ID', serialize=False, auto_created=True, primary_key=True)),
  186. ('line', models.ForeignKey('postgres_tests.Line', on_delete=models.CASCADE)),
  187. ('query', models.CharField(max_length=100)),
  188. ],
  189. options={
  190. 'required_db_vendor': 'postgresql',
  191. },
  192. ),
  193. migrations.CreateModel(
  194. name='AggregateTestModel',
  195. fields=[
  196. ('id', models.AutoField(verbose_name='ID', serialize=False, auto_created=True, primary_key=True)),
  197. ('boolean_field', models.BooleanField(null=True)),
  198. ('char_field', models.CharField(max_length=30, blank=True)),
  199. ('integer_field', models.IntegerField(null=True)),
  200. ]
  201. ),
  202. migrations.CreateModel(
  203. name='StatTestModel',
  204. fields=[
  205. ('id', models.AutoField(verbose_name='ID', serialize=False, auto_created=True, primary_key=True)),
  206. ('int1', models.IntegerField()),
  207. ('int2', models.IntegerField()),
  208. ('related_field', models.ForeignKey(
  209. 'postgres_tests.AggregateTestModel',
  210. models.SET_NULL,
  211. null=True,
  212. )),
  213. ]
  214. ),
  215. migrations.CreateModel(
  216. name='NowTestModel',
  217. fields=[
  218. ('id', models.AutoField(verbose_name='ID', serialize=False, auto_created=True, primary_key=True)),
  219. ('when', models.DateTimeField(null=True, default=None)),
  220. ]
  221. ),
  222. migrations.CreateModel(
  223. name='UUIDTestModel',
  224. fields=[
  225. ('id', models.AutoField(verbose_name='ID', serialize=False, auto_created=True, primary_key=True)),
  226. ('uuid', models.UUIDField(default=None, null=True)),
  227. ]
  228. ),
  229. migrations.CreateModel(
  230. name='RangesModel',
  231. fields=[
  232. ('id', models.AutoField(verbose_name='ID', serialize=False, auto_created=True, primary_key=True)),
  233. ('ints', IntegerRangeField(null=True, blank=True)),
  234. ('bigints', BigIntegerRangeField(null=True, blank=True)),
  235. ('decimals', DecimalRangeField(null=True, blank=True)),
  236. ('timestamps', DateTimeRangeField(null=True, blank=True)),
  237. ('timestamps_inner', DateTimeRangeField(null=True, blank=True)),
  238. ('dates', DateRangeField(null=True, blank=True)),
  239. ('dates_inner', DateRangeField(null=True, blank=True)),
  240. ],
  241. options={
  242. 'required_db_vendor': 'postgresql'
  243. },
  244. bases=(models.Model,)
  245. ),
  246. migrations.CreateModel(
  247. name='RangeLookupsModel',
  248. fields=[
  249. ('parent', models.ForeignKey(
  250. 'postgres_tests.RangesModel',
  251. models.SET_NULL,
  252. blank=True, null=True,
  253. )),
  254. ('integer', models.IntegerField(blank=True, null=True)),
  255. ('big_integer', models.BigIntegerField(blank=True, null=True)),
  256. ('float', models.FloatField(blank=True, null=True)),
  257. ('timestamp', models.DateTimeField(blank=True, null=True)),
  258. ('date', models.DateField(blank=True, null=True)),
  259. ('small_integer', models.SmallIntegerField(blank=True, null=True)),
  260. ('decimal_field', models.DecimalField(max_digits=5, decimal_places=2, blank=True, null=True)),
  261. ],
  262. options={
  263. 'required_db_vendor': 'postgresql',
  264. },
  265. bases=(models.Model,),
  266. ),
  267. migrations.CreateModel(
  268. name='ArrayEnumModel',
  269. fields=[
  270. ('id', models.AutoField(verbose_name='ID', serialize=False, auto_created=True, primary_key=True)),
  271. ('array_of_enums', ArrayField(EnumField(max_length=20), null=True, blank=True)),
  272. ],
  273. options={
  274. 'required_db_vendor': 'postgresql',
  275. },
  276. bases=(models.Model,),
  277. ),
  278. migrations.CreateModel(
  279. name='Room',
  280. fields=[
  281. ('id', models.AutoField(verbose_name='ID', serialize=False, auto_created=True, primary_key=True)),
  282. ('number', models.IntegerField(unique=True)),
  283. ],
  284. ),
  285. migrations.CreateModel(
  286. name='HotelReservation',
  287. fields=[
  288. ('id', models.AutoField(verbose_name='ID', serialize=False, auto_created=True, primary_key=True)),
  289. ('room', models.ForeignKey('postgres_tests.Room', models.CASCADE)),
  290. ('datespan', DateRangeField()),
  291. ('start', models.DateTimeField()),
  292. ('end', models.DateTimeField()),
  293. ('cancelled', models.BooleanField(default=False)),
  294. ],
  295. options={
  296. 'required_db_vendor': 'postgresql',
  297. },
  298. ),
  299. ]