0002_create_test_models.py 19 KB

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