0002_create_test_models.py 18 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551
  1. from django.db import migrations, models
  2. from ..fields import (
  3. ArrayField,
  4. BigIntegerRangeField,
  5. DateRangeField,
  6. DateTimeRangeField,
  7. DecimalRangeField,
  8. EnumField,
  9. HStoreField,
  10. IntegerRangeField,
  11. SearchVectorField,
  12. )
  13. from ..models import TagField
  14. class Migration(migrations.Migration):
  15. dependencies = [
  16. ("postgres_tests", "0001_setup_extensions"),
  17. ]
  18. operations = [
  19. migrations.CreateModel(
  20. name="CharArrayModel",
  21. fields=[
  22. (
  23. "id",
  24. models.AutoField(
  25. verbose_name="ID",
  26. serialize=False,
  27. auto_created=True,
  28. primary_key=True,
  29. ),
  30. ),
  31. ("field", ArrayField(models.CharField(max_length=10), size=None)),
  32. ],
  33. options={
  34. "required_db_vendor": "postgresql",
  35. },
  36. bases=(models.Model,),
  37. ),
  38. migrations.CreateModel(
  39. name="DateTimeArrayModel",
  40. fields=[
  41. (
  42. "id",
  43. models.AutoField(
  44. verbose_name="ID",
  45. serialize=False,
  46. auto_created=True,
  47. primary_key=True,
  48. ),
  49. ),
  50. ("datetimes", ArrayField(models.DateTimeField(), size=None)),
  51. ("dates", ArrayField(models.DateField(), size=None)),
  52. ("times", ArrayField(models.TimeField(), size=None)),
  53. ],
  54. options={
  55. "required_db_vendor": "postgresql",
  56. },
  57. bases=(models.Model,),
  58. ),
  59. migrations.CreateModel(
  60. name="HStoreModel",
  61. fields=[
  62. (
  63. "id",
  64. models.AutoField(
  65. verbose_name="ID",
  66. serialize=False,
  67. auto_created=True,
  68. primary_key=True,
  69. ),
  70. ),
  71. ("field", HStoreField(blank=True, null=True)),
  72. ("array_field", ArrayField(HStoreField(), null=True)),
  73. ],
  74. options={
  75. "required_db_vendor": "postgresql",
  76. },
  77. bases=(models.Model,),
  78. ),
  79. migrations.CreateModel(
  80. name="OtherTypesArrayModel",
  81. fields=[
  82. (
  83. "id",
  84. models.AutoField(
  85. verbose_name="ID",
  86. serialize=False,
  87. auto_created=True,
  88. primary_key=True,
  89. ),
  90. ),
  91. (
  92. "ips",
  93. ArrayField(models.GenericIPAddressField(), size=None, default=list),
  94. ),
  95. ("uuids", ArrayField(models.UUIDField(), size=None, default=list)),
  96. (
  97. "decimals",
  98. ArrayField(
  99. models.DecimalField(max_digits=5, decimal_places=2),
  100. size=None,
  101. default=list,
  102. ),
  103. ),
  104. ("tags", ArrayField(TagField(), blank=True, null=True, size=None)),
  105. (
  106. "json",
  107. ArrayField(models.JSONField(default=dict), default=list, size=None),
  108. ),
  109. ("int_ranges", ArrayField(IntegerRangeField(), null=True, blank=True)),
  110. (
  111. "bigint_ranges",
  112. ArrayField(BigIntegerRangeField(), null=True, blank=True),
  113. ),
  114. ],
  115. options={
  116. "required_db_vendor": "postgresql",
  117. },
  118. bases=(models.Model,),
  119. ),
  120. migrations.CreateModel(
  121. name="IntegerArrayModel",
  122. fields=[
  123. (
  124. "id",
  125. models.AutoField(
  126. verbose_name="ID",
  127. serialize=False,
  128. auto_created=True,
  129. primary_key=True,
  130. ),
  131. ),
  132. (
  133. "field",
  134. ArrayField(
  135. models.IntegerField(), blank=True, default=list, size=None
  136. ),
  137. ),
  138. ],
  139. options={
  140. "required_db_vendor": "postgresql",
  141. },
  142. bases=(models.Model,),
  143. ),
  144. migrations.CreateModel(
  145. name="NestedIntegerArrayModel",
  146. fields=[
  147. (
  148. "id",
  149. models.AutoField(
  150. verbose_name="ID",
  151. serialize=False,
  152. auto_created=True,
  153. primary_key=True,
  154. ),
  155. ),
  156. (
  157. "field",
  158. ArrayField(ArrayField(models.IntegerField(), size=None), size=None),
  159. ),
  160. ],
  161. options={
  162. "required_db_vendor": "postgresql",
  163. },
  164. bases=(models.Model,),
  165. ),
  166. migrations.CreateModel(
  167. name="NullableIntegerArrayModel",
  168. fields=[
  169. (
  170. "id",
  171. models.AutoField(
  172. verbose_name="ID",
  173. serialize=False,
  174. auto_created=True,
  175. primary_key=True,
  176. ),
  177. ),
  178. (
  179. "field",
  180. ArrayField(models.IntegerField(), size=None, null=True, blank=True),
  181. ),
  182. (
  183. "field_nested",
  184. ArrayField(
  185. ArrayField(models.IntegerField(null=True), size=None),
  186. size=None,
  187. null=True,
  188. ),
  189. ),
  190. ("order", models.IntegerField(null=True)),
  191. ],
  192. options={
  193. "required_db_vendor": "postgresql",
  194. },
  195. bases=(models.Model,),
  196. ),
  197. migrations.CreateModel(
  198. name="CharFieldModel",
  199. fields=[
  200. (
  201. "id",
  202. models.AutoField(
  203. verbose_name="ID",
  204. serialize=False,
  205. auto_created=True,
  206. primary_key=True,
  207. ),
  208. ),
  209. ("field", models.CharField(max_length=64)),
  210. ],
  211. options=None,
  212. bases=None,
  213. ),
  214. migrations.CreateModel(
  215. name="TextFieldModel",
  216. fields=[
  217. (
  218. "id",
  219. models.AutoField(
  220. verbose_name="ID",
  221. serialize=False,
  222. auto_created=True,
  223. primary_key=True,
  224. ),
  225. ),
  226. ("field", models.TextField()),
  227. ],
  228. options=None,
  229. bases=None,
  230. ),
  231. migrations.CreateModel(
  232. name="SmallAutoFieldModel",
  233. fields=[
  234. (
  235. "id",
  236. models.SmallAutoField(serialize=False, primary_key=True),
  237. ),
  238. ],
  239. options=None,
  240. ),
  241. migrations.CreateModel(
  242. name="BigAutoFieldModel",
  243. fields=[
  244. (
  245. "id",
  246. models.BigAutoField(serialize=False, primary_key=True),
  247. ),
  248. ],
  249. options=None,
  250. ),
  251. migrations.CreateModel(
  252. name="Scene",
  253. fields=[
  254. (
  255. "id",
  256. models.AutoField(
  257. verbose_name="ID",
  258. serialize=False,
  259. auto_created=True,
  260. primary_key=True,
  261. ),
  262. ),
  263. ("scene", models.TextField()),
  264. ("setting", models.CharField(max_length=255)),
  265. ],
  266. options=None,
  267. bases=None,
  268. ),
  269. migrations.CreateModel(
  270. name="Character",
  271. fields=[
  272. (
  273. "id",
  274. models.AutoField(
  275. verbose_name="ID",
  276. serialize=False,
  277. auto_created=True,
  278. primary_key=True,
  279. ),
  280. ),
  281. ("name", models.CharField(max_length=255)),
  282. ],
  283. options=None,
  284. bases=None,
  285. ),
  286. migrations.CreateModel(
  287. name="Line",
  288. fields=[
  289. (
  290. "id",
  291. models.AutoField(
  292. verbose_name="ID",
  293. serialize=False,
  294. auto_created=True,
  295. primary_key=True,
  296. ),
  297. ),
  298. (
  299. "scene",
  300. models.ForeignKey("postgres_tests.Scene", on_delete=models.CASCADE),
  301. ),
  302. (
  303. "character",
  304. models.ForeignKey(
  305. "postgres_tests.Character", on_delete=models.CASCADE
  306. ),
  307. ),
  308. ("dialogue", models.TextField(blank=True, null=True)),
  309. ("dialogue_search_vector", SearchVectorField(blank=True, null=True)),
  310. (
  311. "dialogue_config",
  312. models.CharField(max_length=100, blank=True, null=True),
  313. ),
  314. ],
  315. options={
  316. "required_db_vendor": "postgresql",
  317. },
  318. bases=None,
  319. ),
  320. migrations.CreateModel(
  321. name="LineSavedSearch",
  322. fields=[
  323. (
  324. "id",
  325. models.AutoField(
  326. verbose_name="ID",
  327. serialize=False,
  328. auto_created=True,
  329. primary_key=True,
  330. ),
  331. ),
  332. (
  333. "line",
  334. models.ForeignKey("postgres_tests.Line", on_delete=models.CASCADE),
  335. ),
  336. ("query", models.CharField(max_length=100)),
  337. ],
  338. options={
  339. "required_db_vendor": "postgresql",
  340. },
  341. ),
  342. migrations.CreateModel(
  343. name="AggregateTestModel",
  344. fields=[
  345. (
  346. "id",
  347. models.AutoField(
  348. verbose_name="ID",
  349. serialize=False,
  350. auto_created=True,
  351. primary_key=True,
  352. ),
  353. ),
  354. ("boolean_field", models.BooleanField(null=True)),
  355. ("char_field", models.CharField(max_length=30, blank=True)),
  356. ("text_field", models.TextField(blank=True)),
  357. ("integer_field", models.IntegerField(null=True)),
  358. ("json_field", models.JSONField(null=True)),
  359. ],
  360. options={
  361. "required_db_vendor": "postgresql",
  362. },
  363. ),
  364. migrations.CreateModel(
  365. name="StatTestModel",
  366. fields=[
  367. (
  368. "id",
  369. models.AutoField(
  370. verbose_name="ID",
  371. serialize=False,
  372. auto_created=True,
  373. primary_key=True,
  374. ),
  375. ),
  376. ("int1", models.IntegerField()),
  377. ("int2", models.IntegerField()),
  378. (
  379. "related_field",
  380. models.ForeignKey(
  381. "postgres_tests.AggregateTestModel",
  382. models.SET_NULL,
  383. null=True,
  384. ),
  385. ),
  386. ],
  387. options={
  388. "required_db_vendor": "postgresql",
  389. },
  390. ),
  391. migrations.CreateModel(
  392. name="NowTestModel",
  393. fields=[
  394. (
  395. "id",
  396. models.AutoField(
  397. verbose_name="ID",
  398. serialize=False,
  399. auto_created=True,
  400. primary_key=True,
  401. ),
  402. ),
  403. ("when", models.DateTimeField(null=True, default=None)),
  404. ],
  405. ),
  406. migrations.CreateModel(
  407. name="UUIDTestModel",
  408. fields=[
  409. (
  410. "id",
  411. models.AutoField(
  412. verbose_name="ID",
  413. serialize=False,
  414. auto_created=True,
  415. primary_key=True,
  416. ),
  417. ),
  418. ("uuid", models.UUIDField(default=None, null=True)),
  419. ],
  420. ),
  421. migrations.CreateModel(
  422. name="RangesModel",
  423. fields=[
  424. (
  425. "id",
  426. models.AutoField(
  427. verbose_name="ID",
  428. serialize=False,
  429. auto_created=True,
  430. primary_key=True,
  431. ),
  432. ),
  433. ("ints", IntegerRangeField(null=True, blank=True)),
  434. ("bigints", BigIntegerRangeField(null=True, blank=True)),
  435. ("decimals", DecimalRangeField(null=True, blank=True)),
  436. ("timestamps", DateTimeRangeField(null=True, blank=True)),
  437. ("timestamps_inner", DateTimeRangeField(null=True, blank=True)),
  438. (
  439. "timestamps_closed_bounds",
  440. DateTimeRangeField(null=True, blank=True, default_bounds="[]"),
  441. ),
  442. ("dates", DateRangeField(null=True, blank=True)),
  443. ("dates_inner", DateRangeField(null=True, blank=True)),
  444. ],
  445. options={"required_db_vendor": "postgresql"},
  446. bases=(models.Model,),
  447. ),
  448. migrations.CreateModel(
  449. name="RangeLookupsModel",
  450. fields=[
  451. (
  452. "id",
  453. models.AutoField(
  454. verbose_name="ID",
  455. serialize=False,
  456. auto_created=True,
  457. primary_key=True,
  458. ),
  459. ),
  460. (
  461. "parent",
  462. models.ForeignKey(
  463. "postgres_tests.RangesModel",
  464. models.SET_NULL,
  465. blank=True,
  466. null=True,
  467. ),
  468. ),
  469. ("integer", models.IntegerField(blank=True, null=True)),
  470. ("big_integer", models.BigIntegerField(blank=True, null=True)),
  471. ("float", models.FloatField(blank=True, null=True)),
  472. ("timestamp", models.DateTimeField(blank=True, null=True)),
  473. ("date", models.DateField(blank=True, null=True)),
  474. ("small_integer", models.SmallIntegerField(blank=True, null=True)),
  475. (
  476. "decimal_field",
  477. models.DecimalField(
  478. max_digits=5, decimal_places=2, blank=True, null=True
  479. ),
  480. ),
  481. ],
  482. options={
  483. "required_db_vendor": "postgresql",
  484. },
  485. bases=(models.Model,),
  486. ),
  487. migrations.CreateModel(
  488. name="ArrayEnumModel",
  489. fields=[
  490. (
  491. "id",
  492. models.AutoField(
  493. verbose_name="ID",
  494. serialize=False,
  495. auto_created=True,
  496. primary_key=True,
  497. ),
  498. ),
  499. (
  500. "array_of_enums",
  501. ArrayField(EnumField(max_length=20), size=None),
  502. ),
  503. ],
  504. options={
  505. "required_db_vendor": "postgresql",
  506. },
  507. bases=(models.Model,),
  508. ),
  509. migrations.CreateModel(
  510. name="Room",
  511. fields=[
  512. (
  513. "id",
  514. models.AutoField(
  515. verbose_name="ID",
  516. serialize=False,
  517. auto_created=True,
  518. primary_key=True,
  519. ),
  520. ),
  521. ("number", models.IntegerField(unique=True)),
  522. ],
  523. ),
  524. migrations.CreateModel(
  525. name="HotelReservation",
  526. fields=[
  527. (
  528. "id",
  529. models.AutoField(
  530. verbose_name="ID",
  531. serialize=False,
  532. auto_created=True,
  533. primary_key=True,
  534. ),
  535. ),
  536. ("room", models.ForeignKey("postgres_tests.Room", models.CASCADE)),
  537. ("datespan", DateRangeField()),
  538. ("start", models.DateTimeField()),
  539. ("end", models.DateTimeField()),
  540. ("cancelled", models.BooleanField(default=False)),
  541. ("requirements", models.JSONField(blank=True, null=True)),
  542. ],
  543. options={
  544. "required_db_vendor": "postgresql",
  545. },
  546. ),
  547. ]