Skip to content

Commit

Permalink
Use Python 3 to create native migrations
Browse files Browse the repository at this point in the history
Native migrations created with Python 2 differ from ones created with
Python 3. More importantly, they fail when used in Python 2, but not
vice versa. Something with the field names being byte strings.

This rewrites the native migrations.
  • Loading branch information
maiksprenger committed Aug 5, 2014
1 parent 4ad6b28 commit 66345a8
Show file tree
Hide file tree
Showing 21 changed files with 740 additions and 740 deletions.
60 changes: 30 additions & 30 deletions oscar/apps/address/migrations/0001_initial.py
Original file line number Diff line number Diff line change
Expand Up @@ -16,56 +16,56 @@ class Migration(migrations.Migration):
migrations.CreateModel(
name='Country',
fields=[
('iso_3166_1_a2', models.CharField(max_length=2, serialize=False, verbose_name='ISO 3166-1 alpha-2', primary_key=True)),
('iso_3166_1_a3', models.CharField(max_length=3, verbose_name='ISO 3166-1 alpha-3', blank=True)),
('iso_3166_1_numeric', models.CharField(max_length=3, verbose_name='ISO 3166-1 numeric', blank=True)),
('printable_name', models.CharField(max_length=128, verbose_name='Country name')),
('name', models.CharField(max_length=128, verbose_name='Official name')),
('display_order', models.PositiveSmallIntegerField(default=0, help_text='Higher the number, higher the country in the list.', verbose_name='Display order', db_index=True)),
('is_shipping_country', models.BooleanField(default=False, db_index=True, verbose_name='Is shipping country')),
('iso_3166_1_a2', models.CharField(verbose_name='ISO 3166-1 alpha-2', primary_key=True, serialize=False, max_length=2)),
('iso_3166_1_a3', models.CharField(verbose_name='ISO 3166-1 alpha-3', blank=True, max_length=3)),
('iso_3166_1_numeric', models.CharField(verbose_name='ISO 3166-1 numeric', blank=True, max_length=3)),
('printable_name', models.CharField(verbose_name='Country name', max_length=128)),
('name', models.CharField(verbose_name='Official name', max_length=128)),
('display_order', models.PositiveSmallIntegerField(verbose_name='Display order', help_text='Higher the number, higher the country in the list.', db_index=True, default=0)),
('is_shipping_country', models.BooleanField(verbose_name='Is shipping country', default=False, db_index=True)),
],
options={
'ordering': (b'-display_order', b'printable_name'),
'abstract': False,
'verbose_name': 'Country',
'verbose_name_plural': 'Countries',
'ordering': ('-display_order', 'printable_name'),
'abstract': False,
},
bases=(models.Model,),
),
migrations.CreateModel(
name='UserAddress',
fields=[
('id', models.AutoField(verbose_name='ID', serialize=False, auto_created=True, primary_key=True)),
('title', models.CharField(blank=True, max_length=64, verbose_name='Title', choices=[(b'Mr', 'Mr'), (b'Miss', 'Miss'), (b'Mrs', 'Mrs'), (b'Ms', 'Ms'), (b'Dr', 'Dr')])),
('first_name', models.CharField(max_length=255, verbose_name='First name', blank=True)),
('last_name', models.CharField(max_length=255, verbose_name='Last name', blank=True)),
('line1', models.CharField(max_length=255, verbose_name='First line of address')),
('line2', models.CharField(max_length=255, verbose_name='Second line of address', blank=True)),
('line3', models.CharField(max_length=255, verbose_name='Third line of address', blank=True)),
('line4', models.CharField(max_length=255, verbose_name='City', blank=True)),
('state', models.CharField(max_length=255, verbose_name='State/County', blank=True)),
('postcode', oscar.models.fields.UppercaseCharField(max_length=64, verbose_name='Post/Zip-code', blank=True)),
('search_text', models.TextField(verbose_name='Search text - used only for searching addresses', editable=False)),
('phone_number', oscar.models.fields.PhoneNumberField(help_text='In case we need to call you about your order', verbose_name='Phone number', blank=True)),
('notes', models.TextField(help_text='Tell us anything we should know when delivering your order.', verbose_name='Instructions', blank=True)),
('is_default_for_shipping', models.BooleanField(default=False, verbose_name='Default shipping address?')),
('is_default_for_billing', models.BooleanField(default=False, verbose_name='Default billing address?')),
('num_orders', models.PositiveIntegerField(default=0, verbose_name='Number of Orders')),
('hash', models.CharField(verbose_name='Address Hash', max_length=255, editable=False, db_index=True)),
('date_created', models.DateTimeField(auto_now_add=True, verbose_name='Date Created')),
('id', models.AutoField(auto_created=True, verbose_name='ID', primary_key=True, serialize=False)),
('title', models.CharField(verbose_name='Title', choices=[('Mr', 'Mr'), ('Miss', 'Miss'), ('Mrs', 'Mrs'), ('Ms', 'Ms'), ('Dr', 'Dr')], blank=True, max_length=64)),
('first_name', models.CharField(verbose_name='First name', blank=True, max_length=255)),
('last_name', models.CharField(verbose_name='Last name', blank=True, max_length=255)),
('line1', models.CharField(verbose_name='First line of address', max_length=255)),
('line2', models.CharField(verbose_name='Second line of address', blank=True, max_length=255)),
('line3', models.CharField(verbose_name='Third line of address', blank=True, max_length=255)),
('line4', models.CharField(verbose_name='City', blank=True, max_length=255)),
('state', models.CharField(verbose_name='State/County', blank=True, max_length=255)),
('postcode', oscar.models.fields.UppercaseCharField(verbose_name='Post/Zip-code', blank=True, max_length=64)),
('search_text', models.TextField(editable=False, verbose_name='Search text - used only for searching addresses')),
('phone_number', oscar.models.fields.PhoneNumberField(verbose_name='Phone number', blank=True, help_text='In case we need to call you about your order')),
('notes', models.TextField(verbose_name='Instructions', blank=True, help_text='Tell us anything we should know when delivering your order.')),
('is_default_for_shipping', models.BooleanField(verbose_name='Default shipping address?', default=False)),
('is_default_for_billing', models.BooleanField(verbose_name='Default billing address?', default=False)),
('num_orders', models.PositiveIntegerField(verbose_name='Number of Orders', default=0)),
('hash', models.CharField(editable=False, verbose_name='Address Hash', db_index=True, max_length=255)),
('date_created', models.DateTimeField(verbose_name='Date Created', auto_now_add=True)),
('country', models.ForeignKey(verbose_name='Country', to='address.Country')),
('user', models.ForeignKey(verbose_name='User', to=settings.AUTH_USER_MODEL)),
],
options={
'ordering': [b'-num_orders'],
'abstract': False,
'verbose_name': 'User address',
'verbose_name_plural': 'User addresses',
'ordering': ['-num_orders'],
'abstract': False,
},
bases=(models.Model,),
),
migrations.AlterUniqueTogether(
name='useraddress',
unique_together=set([(b'user', b'hash')]),
unique_together=set([('user', 'hash')]),
),
]
14 changes: 7 additions & 7 deletions oscar/apps/analytics/migrations/0001_initial.py
Original file line number Diff line number Diff line change
Expand Up @@ -13,17 +13,17 @@ class Migration(migrations.Migration):
migrations.CreateModel(
name='ProductRecord',
fields=[
('id', models.AutoField(verbose_name='ID', serialize=False, auto_created=True, primary_key=True)),
('num_views', models.PositiveIntegerField(default=0, verbose_name='Views')),
('num_basket_additions', models.PositiveIntegerField(default=0, verbose_name='Basket Additions')),
('num_purchases', models.PositiveIntegerField(default=0, verbose_name='Purchases', db_index=True)),
('score', models.FloatField(default=0.0, verbose_name='Score')),
('id', models.AutoField(auto_created=True, verbose_name='ID', primary_key=True, serialize=False)),
('num_views', models.PositiveIntegerField(verbose_name='Views', default=0)),
('num_basket_additions', models.PositiveIntegerField(verbose_name='Basket Additions', default=0)),
('num_purchases', models.PositiveIntegerField(verbose_name='Purchases', db_index=True, default=0)),
('score', models.FloatField(verbose_name='Score', default=0.0)),
],
options={
'ordering': [b'-num_purchases'],
'abstract': False,
'verbose_name': 'Product record',
'verbose_name_plural': 'Product records',
'ordering': ['-num_purchases'],
'abstract': False,
},
bases=(models.Model,),
),
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -24,50 +24,50 @@ class Migration(migrations.Migration):
migrations.CreateModel(
name='UserProductView',
fields=[
('id', models.AutoField(verbose_name='ID', serialize=False, auto_created=True, primary_key=True)),
('date_created', models.DateTimeField(auto_now_add=True, verbose_name='Date Created')),
('id', models.AutoField(auto_created=True, verbose_name='ID', primary_key=True, serialize=False)),
('date_created', models.DateTimeField(verbose_name='Date Created', auto_now_add=True)),
('product', models.ForeignKey(verbose_name='Product', to='catalogue.Product')),
('user', models.ForeignKey(verbose_name='User', to=settings.AUTH_USER_MODEL)),
],
options={
'abstract': False,
'verbose_name': 'User product view',
'verbose_name_plural': 'User product views',
'abstract': False,
},
bases=(models.Model,),
),
migrations.CreateModel(
name='UserRecord',
fields=[
('id', models.AutoField(verbose_name='ID', serialize=False, auto_created=True, primary_key=True)),
('num_product_views', models.PositiveIntegerField(default=0, verbose_name='Product Views')),
('num_basket_additions', models.PositiveIntegerField(default=0, verbose_name='Basket Additions')),
('num_orders', models.PositiveIntegerField(default=0, verbose_name='Orders', db_index=True)),
('num_order_lines', models.PositiveIntegerField(default=0, verbose_name='Order Lines', db_index=True)),
('num_order_items', models.PositiveIntegerField(default=0, verbose_name='Order Items', db_index=True)),
('total_spent', models.DecimalField(default=Decimal('0.00'), verbose_name='Total Spent', max_digits=12, decimal_places=2)),
('date_last_order', models.DateTimeField(null=True, verbose_name='Last Order Date', blank=True)),
('id', models.AutoField(auto_created=True, verbose_name='ID', primary_key=True, serialize=False)),
('num_product_views', models.PositiveIntegerField(verbose_name='Product Views', default=0)),
('num_basket_additions', models.PositiveIntegerField(verbose_name='Basket Additions', default=0)),
('num_orders', models.PositiveIntegerField(verbose_name='Orders', db_index=True, default=0)),
('num_order_lines', models.PositiveIntegerField(verbose_name='Order Lines', db_index=True, default=0)),
('num_order_items', models.PositiveIntegerField(verbose_name='Order Items', db_index=True, default=0)),
('total_spent', models.DecimalField(verbose_name='Total Spent', max_digits=12, decimal_places=2, default=Decimal('0.00'))),
('date_last_order', models.DateTimeField(verbose_name='Last Order Date', blank=True, null=True)),
('user', models.OneToOneField(verbose_name='User', to=settings.AUTH_USER_MODEL)),
],
options={
'abstract': False,
'verbose_name': 'User record',
'verbose_name_plural': 'User records',
'abstract': False,
},
bases=(models.Model,),
),
migrations.CreateModel(
name='UserSearch',
fields=[
('id', models.AutoField(verbose_name='ID', serialize=False, auto_created=True, primary_key=True)),
('query', models.CharField(max_length=255, verbose_name='Search term', db_index=True)),
('date_created', models.DateTimeField(auto_now_add=True, verbose_name='Date Created')),
('id', models.AutoField(auto_created=True, verbose_name='ID', primary_key=True, serialize=False)),
('query', models.CharField(verbose_name='Search term', db_index=True, max_length=255)),
('date_created', models.DateTimeField(verbose_name='Date Created', auto_now_add=True)),
('user', models.ForeignKey(verbose_name='User', to=settings.AUTH_USER_MODEL)),
],
options={
'abstract': False,
'verbose_name': 'User search query',
'verbose_name_plural': 'User search queries',
'abstract': False,
},
bases=(models.Model,),
),
Expand Down
12 changes: 6 additions & 6 deletions oscar/apps/basket/migrations/0001_initial.py
Original file line number Diff line number Diff line change
Expand Up @@ -15,17 +15,17 @@ class Migration(migrations.Migration):
migrations.CreateModel(
name='Basket',
fields=[
('id', models.AutoField(verbose_name='ID', serialize=False, auto_created=True, primary_key=True)),
('status', models.CharField(default=b'Open', max_length=128, verbose_name='Status', choices=[(b'Open', 'Open - currently active'), (b'Merged', 'Merged - superceded by another basket'), (b'Saved', 'Saved - for items to be purchased later'), (b'Frozen', 'Frozen - the basket cannot be modified'), (b'Submitted', 'Submitted - has been ordered at the checkout')])),
('date_created', models.DateTimeField(auto_now_add=True, verbose_name='Date created')),
('date_merged', models.DateTimeField(null=True, verbose_name='Date merged', blank=True)),
('date_submitted', models.DateTimeField(null=True, verbose_name='Date submitted', blank=True)),
('id', models.AutoField(auto_created=True, verbose_name='ID', primary_key=True, serialize=False)),
('status', models.CharField(verbose_name='Status', choices=[('Open', 'Open - currently active'), ('Merged', 'Merged - superceded by another basket'), ('Saved', 'Saved - for items to be purchased later'), ('Frozen', 'Frozen - the basket cannot be modified'), ('Submitted', 'Submitted - has been ordered at the checkout')], default='Open', max_length=128)),
('date_created', models.DateTimeField(verbose_name='Date created', auto_now_add=True)),
('date_merged', models.DateTimeField(verbose_name='Date merged', blank=True, null=True)),
('date_submitted', models.DateTimeField(verbose_name='Date submitted', blank=True, null=True)),
('owner', models.ForeignKey(verbose_name='Owner', to=settings.AUTH_USER_MODEL, null=True)),
],
options={
'abstract': False,
'verbose_name': 'Basket',
'verbose_name_plural': 'Baskets',
'abstract': False,
},
bases=(models.Model,),
),
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -17,46 +17,46 @@ class Migration(migrations.Migration):
migrations.AddField(
model_name='basket',
name='vouchers',
field=models.ManyToManyField(to='voucher.Voucher', null=True, verbose_name='Vouchers', blank=True),
field=models.ManyToManyField(verbose_name='Vouchers', blank=True, to='voucher.Voucher', null=True),
preserve_default=True,
),
migrations.CreateModel(
name='Line',
fields=[
('id', models.AutoField(verbose_name='ID', serialize=False, auto_created=True, primary_key=True)),
('line_reference', models.SlugField(max_length=128, verbose_name='Line Reference')),
('quantity', models.PositiveIntegerField(default=1, verbose_name='Quantity')),
('price_currency', models.CharField(default=b'GBP', max_length=12, verbose_name='Currency')),
('price_excl_tax', models.DecimalField(null=True, verbose_name='Price excl. Tax', max_digits=12, decimal_places=2)),
('price_incl_tax', models.DecimalField(null=True, verbose_name='Price incl. Tax', max_digits=12, decimal_places=2)),
('date_created', models.DateTimeField(auto_now_add=True, verbose_name='Date Created')),
('id', models.AutoField(auto_created=True, verbose_name='ID', primary_key=True, serialize=False)),
('line_reference', models.SlugField(verbose_name='Line Reference', max_length=128)),
('quantity', models.PositiveIntegerField(verbose_name='Quantity', default=1)),
('price_currency', models.CharField(verbose_name='Currency', default='GBP', max_length=12)),
('price_excl_tax', models.DecimalField(verbose_name='Price excl. Tax', max_digits=12, decimal_places=2, null=True)),
('price_incl_tax', models.DecimalField(verbose_name='Price incl. Tax', max_digits=12, decimal_places=2, null=True)),
('date_created', models.DateTimeField(verbose_name='Date Created', auto_now_add=True)),
('basket', models.ForeignKey(verbose_name='Basket', to='basket.Basket')),
('product', models.ForeignKey(verbose_name='Product', to='catalogue.Product')),
('stockrecord', models.ForeignKey(to='partner.StockRecord')),
],
options={
'abstract': False,
'verbose_name': 'Basket line',
'verbose_name_plural': 'Basket lines',
'abstract': False,
},
bases=(models.Model,),
),
migrations.AlterUniqueTogether(
name='line',
unique_together=set([(b'basket', b'line_reference')]),
unique_together=set([('basket', 'line_reference')]),
),
migrations.CreateModel(
name='LineAttribute',
fields=[
('id', models.AutoField(verbose_name='ID', serialize=False, auto_created=True, primary_key=True)),
('value', models.CharField(max_length=255, verbose_name='Value')),
('id', models.AutoField(auto_created=True, verbose_name='ID', primary_key=True, serialize=False)),
('value', models.CharField(verbose_name='Value', max_length=255)),
('line', models.ForeignKey(verbose_name='Line', to='basket.Line')),
('option', models.ForeignKey(verbose_name='Option', to='catalogue.Option')),
],
options={
'abstract': False,
'verbose_name': 'Line attribute',
'verbose_name_plural': 'Line attributes',
'abstract': False,
},
bases=(models.Model,),
),
Expand Down

0 comments on commit 66345a8

Please sign in to comment.