0001_initial.py 2.4 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475
  1. from django.db import connection, migrations, models
  2. from ...models import models as gis_models
  3. ops = [
  4. migrations.CreateModel(
  5. name='Neighborhood',
  6. fields=[
  7. ('id', models.AutoField(verbose_name='ID', serialize=False, auto_created=True, primary_key=True)),
  8. ('name', models.CharField(max_length=100, unique=True)),
  9. ('geom', gis_models.MultiPolygonField(srid=4326)),
  10. ],
  11. options={
  12. 'required_db_features': ['gis_enabled'],
  13. },
  14. bases=(models.Model,),
  15. ),
  16. migrations.CreateModel(
  17. name='Household',
  18. fields=[
  19. ('id', models.AutoField(verbose_name='ID', serialize=False, auto_created=True, primary_key=True)),
  20. ('neighborhood', models.ForeignKey(
  21. 'gis_migrations.Neighborhood',
  22. models.SET_NULL,
  23. to_field='id',
  24. null=True,
  25. )),
  26. ('address', models.CharField(max_length=100)),
  27. ('zip_code', models.IntegerField(null=True, blank=True)),
  28. ('geom', gis_models.PointField(srid=4326, geography=True)),
  29. ],
  30. options={
  31. 'required_db_features': ['gis_enabled'],
  32. },
  33. bases=(models.Model,),
  34. ),
  35. migrations.CreateModel(
  36. name='Family',
  37. fields=[
  38. ('id', models.AutoField(verbose_name='ID', serialize=False, auto_created=True, primary_key=True)),
  39. ('name', models.CharField(max_length=100, unique=True)),
  40. ],
  41. options={
  42. },
  43. bases=(models.Model,),
  44. ),
  45. migrations.AddField(
  46. model_name='household',
  47. name='family',
  48. field=models.ForeignKey('gis_migrations.Family', models.SET_NULL, blank=True, null=True),
  49. preserve_default=True,
  50. )
  51. ]
  52. if connection.features.gis_enabled and connection.features.supports_raster:
  53. ops += [
  54. migrations.CreateModel(
  55. name='Heatmap',
  56. fields=[
  57. ('id', models.AutoField(verbose_name='ID', serialize=False, auto_created=True, primary_key=True)),
  58. ('name', models.CharField(max_length=100, unique=True)),
  59. ('rast', gis_models.fields.RasterField(srid=4326)),
  60. ],
  61. options={
  62. },
  63. bases=(models.Model,),
  64. ),
  65. ]
  66. class Migration(migrations.Migration):
  67. """
  68. Used for gis-specific migration tests.
  69. """
  70. operations = ops