Как я могу заставить мои сигналы работать и решить эту проблему? - PullRequest
0 голосов
/ 06 апреля 2020

Привет. Я пытаюсь разработать веб-сайт для интернет-магазина и не знаю, почему по каким-то причинам мои модели.py и signal.py не вступают в силу. Когда я запустил команду makemigrations, все было в порядке, но когда я запустил команду migrate, она сказала: «Миграции не применяются». В результате, когда я захожу на свою страницу администратора, я получаю сообщение об ошибке: OperationalError at /admin/accounts/userstripe/ no such table: accounts_userstripe

Что я могу сделать сейчас? Может кто-нибудь помочь мне?

Мои модели.py:

from django.db import models
from django.contrib.auth.models import User
from django.conf import settings
import stripe


stripe.api_key = settings.STRIPE_SECRET_KEY


class UserStripe(models.Model):
    user = models.OneToOneField(settings.AUTH_USER_MODEL, on_delete= models.CASCADE)
    stripe_id = models.CharField(max_length=120)

    def __unicode__(self):
        return str(self.stripe_id)

Мои сигналы.py:

import stripe
from django.conf import settings
from django.contrib.auth.signals import user_logged_in
from .models import UserStripe

stripe.api_key = settings.STRIPE_SECRET_KEY


def get_or_create_stripe(sender, user, *args, **kwargs):
    try:
        user.userstripe.stripe_id
        print user.UserStripe.stripe_id
    except UserStripe.DoesNotExist:
        customer = stripe.Customer.create(
            email = str(user.email),
        )
        new_user_stripe = UserStripe.objects.create(
            user = user,
            stripe_id = customer.id,
            )
    except:
        pass


user_logged_in.connect(get_or_create_stripe)
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...