Skip to content

Commit

Permalink
Migrate most CharField with fixed with to TextField
Browse files Browse the repository at this point in the history
  • Loading branch information
jessemortenson committed Nov 14, 2024
1 parent 904c6c1 commit 319c868
Show file tree
Hide file tree
Showing 5 changed files with 297 additions and 62 deletions.
243 changes: 243 additions & 0 deletions openstates/data/migrations/0047_auto_20241113_2303.py
Original file line number Diff line number Diff line change
@@ -0,0 +1,243 @@
# Generated by Django 3.2.14 on 2024-11-13 23:03

from django.db import migrations, models


class Migration(migrations.Migration):

dependencies = [
('data', '0046_alter_personoffice_classification'),
]

operations = [
migrations.AlterField(
model_name='bill',
name='identifier',
field=models.TextField(),
),
migrations.AlterField(
model_name='billaction',
name='date',
field=models.TextField(),
),
migrations.AlterField(
model_name='billdocument',
name='classification',
field=models.TextField(blank=True, choices=[('', 'Unknown'), ('fiscal-note', 'Fiscal Note'), ('committee-report', 'Committee Report'), ('summary', 'Summary'), ('digest', 'Digest'), ('veto-message', 'Veto Message'), ('analysis', 'Analysis'), ('law', 'Law')]),
),
migrations.AlterField(
model_name='billdocument',
name='note',
field=models.TextField(),
),
migrations.AlterField(
model_name='billidentifier',
name='identifier',
field=models.TextField(help_text='A unique identifier developed by an upstream or third party source.'),
),
migrations.AlterField(
model_name='billsponsorship',
name='classification',
field=models.TextField(),
),
migrations.AlterField(
model_name='billversion',
name='classification',
field=models.TextField(blank=True, choices=[('', 'Unknown'), ('filed', 'Filed'), ('introduced', 'Introduced'), ('amendment', 'Amendment'), ('substituted', 'Substituted'), ('enrolled', 'Enrolled'), ('became-law', 'Became Law')]),
),
migrations.AlterField(
model_name='billversion',
name='note',
field=models.TextField(),
),
migrations.AlterField(
model_name='event',
name='classification',
field=models.TextField(),
),
migrations.AlterField(
model_name='event',
name='dedupe_key',
field=models.TextField(null=True),
),
migrations.AlterField(
model_name='event',
name='name',
field=models.TextField(),
),
migrations.AlterField(
model_name='event',
name='upstream_id',
field=models.TextField(blank=True),
),
migrations.AlterField(
model_name='eventagendamedia',
name='classification',
field=models.TextField(blank=True, default=''),
),
migrations.AlterField(
model_name='eventagendamedia',
name='note',
field=models.TextField(),
),
migrations.AlterField(
model_name='eventdocument',
name='classification',
field=models.TextField(blank=True, choices=[('agenda', 'Agenda'), ('minutes', 'Minutes'), ('transcript', 'Transcript'), ('testimony', 'Testimony')]),
),
migrations.AlterField(
model_name='eventlocation',
name='name',
field=models.TextField(),
),
migrations.AlterField(
model_name='eventmedia',
name='classification',
field=models.TextField(blank=True, choices=[('audio recording', 'Audio Recording'), ('video recording', 'Video Recording')]),
),
migrations.AlterField(
model_name='eventmedia',
name='note',
field=models.TextField(),
),
migrations.AlterField(
model_name='membership',
name='person_name',
field=models.TextField(blank=True, default='', help_text='The name of the Person that is a member of the Organization.'),
),
migrations.AlterField(
model_name='membership',
name='role',
field=models.TextField(blank=True, help_text='The role that the member fulfills in the Organization.'),
),
migrations.AlterField(
model_name='organization',
name='classification',
field=models.TextField(blank=True, choices=[('legislature', 'Legislature'), ('executive', 'Executive'), ('upper', 'Upper Chamber'), ('lower', 'Lower Chamber'), ('party', 'Party'), ('committee', 'Committee'), ('government', 'Government')], help_text='The type of Organization being defined.'),
),
migrations.AlterField(
model_name='organization',
name='name',
field=models.TextField(help_text='The name of the Organization.'),
),
migrations.AlterField(
model_name='person',
name='email',
field=models.TextField(blank=True, default='', help_text='The official email address of the Person.'),
),
migrations.AlterField(
model_name='person',
name='family_name',
field=models.TextField(blank=True, help_text="A Person's family name."),
),
migrations.AlterField(
model_name='person',
name='gender',
field=models.TextField(blank=True, help_text="A Person's gender"),
),
migrations.AlterField(
model_name='person',
name='given_name',
field=models.TextField(blank=True, help_text="A Person's given name."),
),
migrations.AlterField(
model_name='person',
name='name',
field=models.TextField(db_index=True, help_text="A Person's preferred full name."),
),
migrations.AlterField(
model_name='person',
name='primary_party',
field=models.TextField(default='', help_text='Primary party an individual is associated with.'),
),
migrations.AlterField(
model_name='personname',
name='name',
field=models.TextField(db_index=True, help_text='An alternative name.'),
),
migrations.AlterField(
model_name='personname',
name='note',
field=models.TextField(blank=True, help_text='A short, optional note about alternative name.'),
),
migrations.AlterField(
model_name='personoffice',
name='address',
field=models.TextField(blank=True, default=''),
),
migrations.AlterField(
model_name='personoffice',
name='classification',
field=models.TextField(choices=[('district', 'District Office'), ('district-mail', 'District Mailing Address'), ('capitol', 'Capitol Office'), ('capitol-mail', 'Capitol Mailing Address'), ('primary', 'Primary Office'), ('home', 'Home')]),
),
migrations.AlterField(
model_name='personoffice',
name='fax',
field=models.TextField(blank=True, default=''),
),
migrations.AlterField(
model_name='personoffice',
name='name',
field=models.TextField(blank=True, default=''),
),
migrations.AlterField(
model_name='personoffice',
name='voice',
field=models.TextField(blank=True, default=''),
),
migrations.AlterField(
model_name='personvote',
name='option',
field=models.TextField(choices=[('yes', 'Yes'), ('no', 'No'), ('absent', 'Absent'), ('abstain', 'Abstain'), ('not voting', 'Not Voting'), ('paired', 'Paired'), ('excused', 'Excused'), ('other', 'Other')]),
),
migrations.AlterField(
model_name='personvote',
name='voter_name',
field=models.TextField(),
),
migrations.AlterField(
model_name='post',
name='label',
field=models.TextField(help_text='A label describing the Post.'),
),
migrations.AlterField(
model_name='post',
name='role',
field=models.TextField(blank=True, help_text='The function that the holder of the post fulfills.'),
),
migrations.AlterField(
model_name='relatedbill',
name='identifier',
field=models.TextField(),
),
migrations.AlterField(
model_name='relatedbill',
name='legislative_session',
field=models.TextField(),
),
migrations.AlterField(
model_name='relatedbill',
name='relation_type',
field=models.TextField(choices=[('companion', 'Companion'), ('prior-session', 'Prior Session'), ('replaced-by', 'Replaced By'), ('replaces', 'Replaces'), ('related', 'Related')]),
),
migrations.AlterField(
model_name='votecount',
name='option',
field=models.TextField(choices=[('yes', 'Yes'), ('no', 'No'), ('absent', 'Absent'), ('abstain', 'Abstain'), ('not voting', 'Not Voting'), ('paired', 'Paired'), ('excused', 'Excused'), ('other', 'Other')]),
),
migrations.AlterField(
model_name='voteevent',
name='dedupe_key',
field=models.TextField(null=True),
),
migrations.AlterField(
model_name='voteevent',
name='identifier',
field=models.TextField(blank=True),
),
migrations.AlterField(
model_name='voteevent',
name='result',
field=models.TextField(choices=[('pass', 'Pass'), ('fail', 'Fail')]),
),
]
29 changes: 14 additions & 15 deletions openstates/data/models/bill.py
Original file line number Diff line number Diff line change
Expand Up @@ -25,7 +25,7 @@ class Bill(OCDBase):
# sessions should be hard to delete
on_delete=models.PROTECT,
)
identifier = models.CharField(max_length=100)
identifier = models.TextField()

title = models.TextField()

Expand Down Expand Up @@ -85,8 +85,7 @@ class BillIdentifier(RelatedBase):
bill = models.ForeignKey(
Bill, related_name="other_identifiers", on_delete=models.CASCADE
)
identifier = models.CharField(
max_length=300,
identifier = models.TextField(
help_text="A unique identifier developed by an upstream or third party source.",
)

Expand All @@ -103,7 +102,7 @@ class BillAction(RelatedBase):
on_delete=models.PROTECT,
)
description = models.TextField()
date = models.CharField(max_length=25) # YYYY-MM-DD HH:MM:SS+HH:MM
date = models.TextField() # YYYY-MM-DD HH:MM:SS+HH:MM
classification = ArrayField(
base_field=models.TextField(), blank=True, default=list
) # enum
Expand Down Expand Up @@ -140,11 +139,11 @@ class RelatedBill(RelatedBase):
# if related bill goes away, just unlink the relationship
on_delete=models.SET_NULL,
)
identifier = models.CharField(max_length=100)
identifier = models.TextField()
# not a FK in case we don't know the session yet
legislative_session = models.CharField(max_length=100)
relation_type = models.CharField(
max_length=100, choices=common.BILL_RELATION_TYPE_CHOICES
legislative_session = models.TextField()
relation_type = models.TextField(
choices=common.BILL_RELATION_TYPE_CHOICES
)

def __str__(self):
Expand All @@ -161,7 +160,7 @@ class BillSponsorship(RelatedEntityBase):
Bill, related_name="sponsorships", on_delete=models.CASCADE
)
primary = models.BooleanField(default=False)
classification = models.CharField(max_length=100) # enum?
classification = models.TextField() # enum?

def __str__(self):
return "{} ({}) sponsorship of {}".format(
Expand All @@ -174,10 +173,10 @@ class Meta:

class BillDocument(RelatedBase):
bill = models.ForeignKey(Bill, related_name="documents", on_delete=models.CASCADE)
note = models.CharField(max_length=300)
note = models.TextField()
date = models.CharField(max_length=10) # YYYY[-MM[-DD]]
classification = models.CharField(
max_length=100, choices=common.BILL_DOCUMENT_CHOICES, blank=True
classification = models.TextField(
choices=common.BILL_DOCUMENT_CHOICES, blank=True
)
extras = models.JSONField(default=dict, blank=True)

Expand All @@ -190,10 +189,10 @@ class Meta:

class BillVersion(RelatedBase):
bill = models.ForeignKey(Bill, related_name="versions", on_delete=models.CASCADE)
note = models.CharField(max_length=300)
note = models.TextField()
date = models.CharField(max_length=10) # YYYY[-MM[-DD]]
classification = models.CharField(
max_length=100, choices=common.BILL_VERSION_CHOICES, blank=True
classification = models.TextField(
choices=common.BILL_VERSION_CHOICES, blank=True
)
extras = models.JSONField(default=dict, blank=True)

Expand Down
Loading

0 comments on commit 319c868

Please sign in to comment.