diff --git a/mysite/mysite/settings.py b/mysite/mysite/settings.py index d7d75ea..7f3c1f9 100644 --- a/mysite/mysite/settings.py +++ b/mysite/mysite/settings.py @@ -41,8 +41,20 @@ 'django.contrib.staticfiles', 'pokemoon', 'rest_framework', + 'social_django', ] +SOCIAL_AUTH_POSTGRES_JSONFIELD = True + +AUTHENTICATION_BACKENDS = ( + 'social_core.backends.vk.VKOAuth2', + 'django.contrib.auth.backends.ModelBackend', +) + +SOCIAL_AUTH_VK_OAUTH2_KEY = os.environ.get("VK_APP_ID") +SOCIAL_AUTH_VK_OAUTH2_SECRET = os.environ.get("VK_API_SECRET") +SOCIAL_AUTH_VK_OAUTH2_SCOPE = ['email'] + REST_FRAMEWORK = { 'DEFAULT_PAGINATION_CLASS': 'rest_framework.pagination.LimitOffsetPagination', 'PAGE_SIZE': 25 @@ -71,6 +83,7 @@ 'django.template.context_processors.request', 'django.contrib.auth.context_processors.auth', 'django.contrib.messages.context_processors.messages', + 'social_django.context_processors.backends', ], }, }, diff --git a/mysite/pokemoon/migrations/0002_feedback_user_fight_user.py b/mysite/pokemoon/migrations/0002_feedback_user_fight_user.py new file mode 100644 index 0000000..38ce15e --- /dev/null +++ b/mysite/pokemoon/migrations/0002_feedback_user_fight_user.py @@ -0,0 +1,26 @@ +# Generated by Django 4.2.8 on 2023-12-18 21:49 + +from django.conf import settings +from django.db import migrations, models +import django.db.models.deletion + + +class Migration(migrations.Migration): + + dependencies = [ + migrations.swappable_dependency(settings.AUTH_USER_MODEL), + ('pokemoon', '0001_initial'), + ] + + operations = [ + migrations.AddField( + model_name='feedback', + name='user', + field=models.ForeignKey(null=True, on_delete=django.db.models.deletion.CASCADE, to=settings.AUTH_USER_MODEL), + ), + migrations.AddField( + model_name='fight', + name='user', + field=models.ForeignKey(null=True, on_delete=django.db.models.deletion.CASCADE, to=settings.AUTH_USER_MODEL), + ), + ] diff --git a/mysite/pokemoon/models.py b/mysite/pokemoon/models.py index 1368327..faf7b4a 100644 --- a/mysite/pokemoon/models.py +++ b/mysite/pokemoon/models.py @@ -8,6 +8,7 @@ class Fight(models.Model): winner_id = models.IntegerField() round_count = models.IntegerField() created_at = models.DateTimeField(auto_now_add=True) + user = models.ForeignKey('auth.User', on_delete=models.CASCADE, null=True) class Pokemon(models.Model): pokid = models.IntegerField() @@ -20,7 +21,7 @@ class Feedback(models.Model): rating = models.IntegerField() text = models.TextField() created_at = models.DateTimeField(auto_now_add=True) - + user = models.ForeignKey('auth.User', on_delete=models.CASCADE, null=True) pokemon = models.ForeignKey("Pokemon", on_delete=models.CASCADE) def __str__(self): diff --git a/mysite/pokemoon/templates/index.html b/mysite/pokemoon/templates/index.html index 63b188d..e74a0f7 100644 --- a/mysite/pokemoon/templates/index.html +++ b/mysite/pokemoon/templates/index.html @@ -20,8 +20,6 @@
Hi hello
diff --git a/mysite/pokemoon/templates/pokemon.html b/mysite/pokemoon/templates/pokemon.html index 116b654..44401ae 100644 --- a/mysite/pokemoon/templates/pokemon.html +++ b/mysite/pokemoon/templates/pokemon.html @@ -75,6 +75,9 @@Автор: {{ feedback.user }}
+ {% endif %}Рейтинг: {{ feedback.rating }}
{% if feedback.text %}Текст: {{ feedback.text }}
diff --git a/mysite/pokemoon/templates/registration/login.html b/mysite/pokemoon/templates/registration/login.html index 32d1c1f..3ede1d2 100644 --- a/mysite/pokemoon/templates/registration/login.html +++ b/mysite/pokemoon/templates/registration/login.html @@ -29,6 +29,9 @@