Move address to the User, Order, and Subscription models respectively
This commit is contained in:
parent
c09184078a
commit
de329a5340
@ -0,0 +1,38 @@
|
|||||||
|
# Generated by Django 4.1.6 on 2023-07-15 02:46
|
||||||
|
|
||||||
|
from django.db import migrations, models
|
||||||
|
|
||||||
|
|
||||||
|
class Migration(migrations.Migration):
|
||||||
|
|
||||||
|
dependencies = [
|
||||||
|
('accounts', '0002_address_accounts_address_all_key'),
|
||||||
|
]
|
||||||
|
|
||||||
|
operations = [
|
||||||
|
migrations.AddField(
|
||||||
|
model_name='user',
|
||||||
|
name='shipping_city',
|
||||||
|
field=models.CharField(blank=True, max_length=256),
|
||||||
|
),
|
||||||
|
migrations.AddField(
|
||||||
|
model_name='user',
|
||||||
|
name='shipping_postal_code',
|
||||||
|
field=models.CharField(blank=True, max_length=20),
|
||||||
|
),
|
||||||
|
migrations.AddField(
|
||||||
|
model_name='user',
|
||||||
|
name='shipping_state',
|
||||||
|
field=models.CharField(blank=True, choices=[('AL', 'Alabama'), ('AK', 'Alaska'), ('AS', 'American Samoa'), ('AZ', 'Arizona'), ('AR', 'Arkansas'), ('AA', 'Armed Forces Americas'), ('AE', 'Armed Forces Europe'), ('AP', 'Armed Forces Pacific'), ('CA', 'California'), ('CO', 'Colorado'), ('CT', 'Connecticut'), ('DE', 'Delaware'), ('DC', 'District of Columbia'), ('FM', 'Federated States of Micronesia'), ('FL', 'Florida'), ('GA', 'Georgia'), ('GU', 'Guam'), ('HI', 'Hawaii'), ('ID', 'Idaho'), ('IL', 'Illinois'), ('IN', 'Indiana'), ('IA', 'Iowa'), ('KS', 'Kansas'), ('KY', 'Kentucky'), ('LA', 'Louisiana'), ('ME', 'Maine'), ('MH', 'Marshall Islands'), ('MD', 'Maryland'), ('MA', 'Massachusetts'), ('MI', 'Michigan'), ('MN', 'Minnesota'), ('MS', 'Mississippi'), ('MO', 'Missouri'), ('MT', 'Montana'), ('NE', 'Nebraska'), ('NV', 'Nevada'), ('NH', 'New Hampshire'), ('NJ', 'New Jersey'), ('NM', 'New Mexico'), ('NY', 'New York'), ('NC', 'North Carolina'), ('ND', 'North Dakota'), ('MP', 'Northern Mariana Islands'), ('OH', 'Ohio'), ('OK', 'Oklahoma'), ('OR', 'Oregon'), ('PW', 'Palau'), ('PA', 'Pennsylvania'), ('PR', 'Puerto Rico'), ('RI', 'Rhode Island'), ('SC', 'South Carolina'), ('SD', 'South Dakota'), ('TN', 'Tennessee'), ('TX', 'Texas'), ('UT', 'Utah'), ('VT', 'Vermont'), ('VI', 'Virgin Islands'), ('VA', 'Virginia'), ('WA', 'Washington'), ('WV', 'West Virginia'), ('WI', 'Wisconsin'), ('WY', 'Wyoming')], max_length=2),
|
||||||
|
),
|
||||||
|
migrations.AddField(
|
||||||
|
model_name='user',
|
||||||
|
name='shipping_street_address_1',
|
||||||
|
field=models.CharField(blank=True, max_length=256),
|
||||||
|
),
|
||||||
|
migrations.AddField(
|
||||||
|
model_name='user',
|
||||||
|
name='shipping_street_address_2',
|
||||||
|
field=models.CharField(blank=True, max_length=256),
|
||||||
|
),
|
||||||
|
]
|
||||||
@ -0,0 +1,27 @@
|
|||||||
|
# Generated by Django 4.1.6 on 2023-07-15 02:56
|
||||||
|
|
||||||
|
from django.db import migrations
|
||||||
|
|
||||||
|
|
||||||
|
def copy_default_address_to_user(apps, schema_editor):
|
||||||
|
User = apps.get_model("accounts", "User")
|
||||||
|
|
||||||
|
for user in User.objects.all():
|
||||||
|
if user.default_shipping_address:
|
||||||
|
user.shipping_street_address_1 = user.default_shipping_address.street_address_1
|
||||||
|
user.shipping_street_address_2 = user.default_shipping_address.street_address_2
|
||||||
|
user.shipping_city = user.default_shipping_address.city
|
||||||
|
user.shipping_state = user.default_shipping_address.state
|
||||||
|
user.shipping_postal_code = user.default_shipping_address.postal_code
|
||||||
|
user.save()
|
||||||
|
|
||||||
|
|
||||||
|
class Migration(migrations.Migration):
|
||||||
|
|
||||||
|
dependencies = [
|
||||||
|
('accounts', '0003_user_shipping_city_user_shipping_postal_code_and_more'),
|
||||||
|
]
|
||||||
|
|
||||||
|
operations = [
|
||||||
|
migrations.RunPython(copy_default_address_to_user)
|
||||||
|
]
|
||||||
@ -76,6 +76,17 @@ class User(AbstractUser):
|
|||||||
)
|
)
|
||||||
stripe_id = models.CharField(max_length=255, blank=True)
|
stripe_id = models.CharField(max_length=255, blank=True)
|
||||||
|
|
||||||
|
# Shipping address
|
||||||
|
shipping_street_address_1 = models.CharField(max_length=256, blank=True)
|
||||||
|
shipping_street_address_2 = models.CharField(max_length=256, blank=True)
|
||||||
|
shipping_city = models.CharField(max_length=256, blank=True)
|
||||||
|
shipping_state = models.CharField(
|
||||||
|
max_length=2,
|
||||||
|
choices=USPS_CHOICES,
|
||||||
|
blank=True
|
||||||
|
)
|
||||||
|
shipping_postal_code = models.CharField(max_length=20, blank=True)
|
||||||
|
|
||||||
def get_or_create_stripe_id(self):
|
def get_or_create_stripe_id(self):
|
||||||
if not self.stripe_id:
|
if not self.stripe_id:
|
||||||
response = stripe.Customer.create(
|
response = stripe.Customer.create(
|
||||||
|
|||||||
@ -0,0 +1,63 @@
|
|||||||
|
# Generated by Django 4.1.6 on 2023-07-15 02:46
|
||||||
|
|
||||||
|
from django.db import migrations, models
|
||||||
|
|
||||||
|
|
||||||
|
class Migration(migrations.Migration):
|
||||||
|
|
||||||
|
dependencies = [
|
||||||
|
('core', '0003_rename_max_order_per_customer_productvariant_order_limit'),
|
||||||
|
]
|
||||||
|
|
||||||
|
operations = [
|
||||||
|
migrations.AddField(
|
||||||
|
model_name='order',
|
||||||
|
name='shipping_city',
|
||||||
|
field=models.CharField(blank=True, max_length=256),
|
||||||
|
),
|
||||||
|
migrations.AddField(
|
||||||
|
model_name='order',
|
||||||
|
name='shipping_postal_code',
|
||||||
|
field=models.CharField(blank=True, max_length=20),
|
||||||
|
),
|
||||||
|
migrations.AddField(
|
||||||
|
model_name='order',
|
||||||
|
name='shipping_state',
|
||||||
|
field=models.CharField(blank=True, choices=[('AL', 'Alabama'), ('AK', 'Alaska'), ('AS', 'American Samoa'), ('AZ', 'Arizona'), ('AR', 'Arkansas'), ('AA', 'Armed Forces Americas'), ('AE', 'Armed Forces Europe'), ('AP', 'Armed Forces Pacific'), ('CA', 'California'), ('CO', 'Colorado'), ('CT', 'Connecticut'), ('DE', 'Delaware'), ('DC', 'District of Columbia'), ('FM', 'Federated States of Micronesia'), ('FL', 'Florida'), ('GA', 'Georgia'), ('GU', 'Guam'), ('HI', 'Hawaii'), ('ID', 'Idaho'), ('IL', 'Illinois'), ('IN', 'Indiana'), ('IA', 'Iowa'), ('KS', 'Kansas'), ('KY', 'Kentucky'), ('LA', 'Louisiana'), ('ME', 'Maine'), ('MH', 'Marshall Islands'), ('MD', 'Maryland'), ('MA', 'Massachusetts'), ('MI', 'Michigan'), ('MN', 'Minnesota'), ('MS', 'Mississippi'), ('MO', 'Missouri'), ('MT', 'Montana'), ('NE', 'Nebraska'), ('NV', 'Nevada'), ('NH', 'New Hampshire'), ('NJ', 'New Jersey'), ('NM', 'New Mexico'), ('NY', 'New York'), ('NC', 'North Carolina'), ('ND', 'North Dakota'), ('MP', 'Northern Mariana Islands'), ('OH', 'Ohio'), ('OK', 'Oklahoma'), ('OR', 'Oregon'), ('PW', 'Palau'), ('PA', 'Pennsylvania'), ('PR', 'Puerto Rico'), ('RI', 'Rhode Island'), ('SC', 'South Carolina'), ('SD', 'South Dakota'), ('TN', 'Tennessee'), ('TX', 'Texas'), ('UT', 'Utah'), ('VT', 'Vermont'), ('VI', 'Virgin Islands'), ('VA', 'Virginia'), ('WA', 'Washington'), ('WV', 'West Virginia'), ('WI', 'Wisconsin'), ('WY', 'Wyoming')], max_length=2),
|
||||||
|
),
|
||||||
|
migrations.AddField(
|
||||||
|
model_name='order',
|
||||||
|
name='shipping_street_address_1',
|
||||||
|
field=models.CharField(blank=True, max_length=256),
|
||||||
|
),
|
||||||
|
migrations.AddField(
|
||||||
|
model_name='order',
|
||||||
|
name='shipping_street_address_2',
|
||||||
|
field=models.CharField(blank=True, max_length=256),
|
||||||
|
),
|
||||||
|
migrations.AddField(
|
||||||
|
model_name='subscription',
|
||||||
|
name='shipping_city',
|
||||||
|
field=models.CharField(blank=True, max_length=256),
|
||||||
|
),
|
||||||
|
migrations.AddField(
|
||||||
|
model_name='subscription',
|
||||||
|
name='shipping_postal_code',
|
||||||
|
field=models.CharField(blank=True, max_length=20),
|
||||||
|
),
|
||||||
|
migrations.AddField(
|
||||||
|
model_name='subscription',
|
||||||
|
name='shipping_state',
|
||||||
|
field=models.CharField(blank=True, choices=[('AL', 'Alabama'), ('AK', 'Alaska'), ('AS', 'American Samoa'), ('AZ', 'Arizona'), ('AR', 'Arkansas'), ('AA', 'Armed Forces Americas'), ('AE', 'Armed Forces Europe'), ('AP', 'Armed Forces Pacific'), ('CA', 'California'), ('CO', 'Colorado'), ('CT', 'Connecticut'), ('DE', 'Delaware'), ('DC', 'District of Columbia'), ('FM', 'Federated States of Micronesia'), ('FL', 'Florida'), ('GA', 'Georgia'), ('GU', 'Guam'), ('HI', 'Hawaii'), ('ID', 'Idaho'), ('IL', 'Illinois'), ('IN', 'Indiana'), ('IA', 'Iowa'), ('KS', 'Kansas'), ('KY', 'Kentucky'), ('LA', 'Louisiana'), ('ME', 'Maine'), ('MH', 'Marshall Islands'), ('MD', 'Maryland'), ('MA', 'Massachusetts'), ('MI', 'Michigan'), ('MN', 'Minnesota'), ('MS', 'Mississippi'), ('MO', 'Missouri'), ('MT', 'Montana'), ('NE', 'Nebraska'), ('NV', 'Nevada'), ('NH', 'New Hampshire'), ('NJ', 'New Jersey'), ('NM', 'New Mexico'), ('NY', 'New York'), ('NC', 'North Carolina'), ('ND', 'North Dakota'), ('MP', 'Northern Mariana Islands'), ('OH', 'Ohio'), ('OK', 'Oklahoma'), ('OR', 'Oregon'), ('PW', 'Palau'), ('PA', 'Pennsylvania'), ('PR', 'Puerto Rico'), ('RI', 'Rhode Island'), ('SC', 'South Carolina'), ('SD', 'South Dakota'), ('TN', 'Tennessee'), ('TX', 'Texas'), ('UT', 'Utah'), ('VT', 'Vermont'), ('VI', 'Virgin Islands'), ('VA', 'Virginia'), ('WA', 'Washington'), ('WV', 'West Virginia'), ('WI', 'Wisconsin'), ('WY', 'Wyoming')], max_length=2),
|
||||||
|
),
|
||||||
|
migrations.AddField(
|
||||||
|
model_name='subscription',
|
||||||
|
name='shipping_street_address_1',
|
||||||
|
field=models.CharField(blank=True, max_length=256),
|
||||||
|
),
|
||||||
|
migrations.AddField(
|
||||||
|
model_name='subscription',
|
||||||
|
name='shipping_street_address_2',
|
||||||
|
field=models.CharField(blank=True, max_length=256),
|
||||||
|
),
|
||||||
|
]
|
||||||
@ -0,0 +1,41 @@
|
|||||||
|
# Generated by Django 4.1.6 on 2023-07-15 02:59
|
||||||
|
|
||||||
|
from django.db import migrations
|
||||||
|
|
||||||
|
|
||||||
|
def copy_address_to_order(apps, schema_editor):
|
||||||
|
Order = apps.get_model("core", "Order")
|
||||||
|
|
||||||
|
for order in Order.objects.all():
|
||||||
|
if order.shipping_address:
|
||||||
|
order.shipping_street_address_1 = order.shipping_address.street_address_1
|
||||||
|
order.shipping_street_address_2 = order.shipping_address.street_address_2
|
||||||
|
order.shipping_city = order.shipping_address.city
|
||||||
|
order.shipping_state = order.shipping_address.state
|
||||||
|
order.shipping_postal_code = order.shipping_address.postal_code
|
||||||
|
order.save()
|
||||||
|
|
||||||
|
|
||||||
|
def copy_address_to_subscription(apps, schema_editor):
|
||||||
|
Subscription = apps.get_model("core", "Subscription")
|
||||||
|
|
||||||
|
for subscription in Subscription.objects.all():
|
||||||
|
if subscription.shipping_address:
|
||||||
|
subscription.shipping_street_address_1 = subscription.shipping_address.street_address_1
|
||||||
|
subscription.shipping_street_address_2 = subscription.shipping_address.street_address_2
|
||||||
|
subscription.shipping_city = subscription.shipping_address.city
|
||||||
|
subscription.shipping_state = subscription.shipping_address.state
|
||||||
|
subscription.shipping_postal_code = subscription.shipping_address.postal_code
|
||||||
|
subscription.save()
|
||||||
|
|
||||||
|
|
||||||
|
class Migration(migrations.Migration):
|
||||||
|
|
||||||
|
dependencies = [
|
||||||
|
('core', '0004_order_shipping_city_order_shipping_postal_code_and_more'),
|
||||||
|
]
|
||||||
|
|
||||||
|
operations = [
|
||||||
|
migrations.RunPython(copy_address_to_order),
|
||||||
|
migrations.RunPython(copy_address_to_subscription)
|
||||||
|
]
|
||||||
@ -16,6 +16,7 @@ from django.contrib.postgres.fields import ArrayField, HStoreField
|
|||||||
from django.forms.models import model_to_dict
|
from django.forms.models import model_to_dict
|
||||||
|
|
||||||
from django_measurement.models import MeasurementField
|
from django_measurement.models import MeasurementField
|
||||||
|
from localflavor.us.us_states import USPS_CHOICES
|
||||||
|
|
||||||
from accounts.models import User, Address
|
from accounts.models import User, Address
|
||||||
|
|
||||||
@ -344,6 +345,16 @@ class Order(models.Model):
|
|||||||
null=True,
|
null=True,
|
||||||
on_delete=models.SET_NULL
|
on_delete=models.SET_NULL
|
||||||
)
|
)
|
||||||
|
# Shipping address
|
||||||
|
shipping_street_address_1 = models.CharField(max_length=256, blank=True)
|
||||||
|
shipping_street_address_2 = models.CharField(max_length=256, blank=True)
|
||||||
|
shipping_city = models.CharField(max_length=256, blank=True)
|
||||||
|
shipping_state = models.CharField(
|
||||||
|
max_length=2,
|
||||||
|
choices=USPS_CHOICES,
|
||||||
|
blank=True
|
||||||
|
)
|
||||||
|
shipping_postal_code = models.CharField(max_length=20, blank=True)
|
||||||
shipping_address = models.ForeignKey(
|
shipping_address = models.ForeignKey(
|
||||||
Address,
|
Address,
|
||||||
related_name="+",
|
related_name="+",
|
||||||
@ -544,6 +555,16 @@ class Subscription(models.Model):
|
|||||||
on_delete=models.SET_NULL,
|
on_delete=models.SET_NULL,
|
||||||
null=True
|
null=True
|
||||||
)
|
)
|
||||||
|
# Shipping address
|
||||||
|
shipping_street_address_1 = models.CharField(max_length=256, blank=True)
|
||||||
|
shipping_street_address_2 = models.CharField(max_length=256, blank=True)
|
||||||
|
shipping_city = models.CharField(max_length=256, blank=True)
|
||||||
|
shipping_state = models.CharField(
|
||||||
|
max_length=2,
|
||||||
|
choices=USPS_CHOICES,
|
||||||
|
blank=True
|
||||||
|
)
|
||||||
|
shipping_postal_code = models.CharField(max_length=20, blank=True)
|
||||||
shipping_address = models.ForeignKey(
|
shipping_address = models.ForeignKey(
|
||||||
Address,
|
Address,
|
||||||
related_name='+',
|
related_name='+',
|
||||||
|
|||||||
@ -25,7 +25,7 @@ services:
|
|||||||
- redis
|
- redis
|
||||||
web:
|
web:
|
||||||
build: .
|
build: .
|
||||||
command: sh -c "python manage.py migrate && python manage.py collectstatic --no-input && gunicorn --bind :8000 --reload ptcoffee.wsgi:application"
|
command: gunicorn --bind :8000 --reload ptcoffee.wsgi:application
|
||||||
volumes:
|
volumes:
|
||||||
- .:/app
|
- .:/app
|
||||||
- ./static/:/var/www/static
|
- ./static/:/var/www/static
|
||||||
|
|||||||
Loading…
x
Reference in New Issue
Block a user