diff --git a/django_views_routing_homework/urls.py b/django_views_routing_homework/urls.py index 7ea3e32..39a60fc 100644 --- a/django_views_routing_homework/urls.py +++ b/django_views_routing_homework/urls.py @@ -4,6 +4,7 @@ from django_views_routing_homework.views.level_1.a_welcome_user import welcome_user_view from django_views_routing_homework.views.level_1.c_baned_username import is_username_banned_view from django_views_routing_homework.views.level_2.a_user_info_by_username import get_user_info_by_username_view +from django_views_routing_homework.views.level_2.b_greet_user_language import greet_user_in_different_languages_view from django_views_routing_homework.views.level_2.c_product_type import get_products_view from django_views_routing_homework.views.level_2.d_authorization import authorization_view, process_authorization_view from django_views_routing_homework.views.level_3.b_validate_user_data import validate_user_data_view @@ -15,7 +16,7 @@ path('admin/', admin.site.urls), path('welcome/', welcome_user_view), path('banned//', is_username_banned_view), - path('user-info-by-username//', get_user_info_by_username_view), + path('user-info-by-username//', get_user_info_by_username_view), path('products/', get_products_view), path('authorization/', authorization_view), path('process-authorization/', process_authorization_view), @@ -23,5 +24,5 @@ path('user/validate/', validate_user_data_view), path('user/github//full-name/', validate_user_data_view), path('text/generate/', generate_file_with_text_view), - # добавлять пути тут + path('greet///', greet_user_in_different_languages_view), ] diff --git a/django_views_routing_homework/views/level_2/c_product_type.py b/django_views_routing_homework/views/level_2/c_product_type.py index 5d87f69..a5f3b0a 100644 --- a/django_views_routing_homework/views/level_2/c_product_type.py +++ b/django_views_routing_homework/views/level_2/c_product_type.py @@ -37,7 +37,8 @@ def get_products_view(request): - products = [] - # код писать тут + products = PRODUCTS + if product_type := request.GET.get('type'): + products = [product for product in PRODUCTS if product['type'] == product_type] return JsonResponse(data=products, safe=False) diff --git a/django_views_routing_homework/views/level_2/d_authorization.py b/django_views_routing_homework/views/level_2/d_authorization.py index 4873af5..3fe8107 100644 --- a/django_views_routing_homework/views/level_2/d_authorization.py +++ b/django_views_routing_homework/views/level_2/d_authorization.py @@ -38,7 +38,9 @@ def process_authorization_view(request): if request.method == 'POST': data = json.loads(request.body) - # код писать тут + password = USERNAME_TO_PASSWORD_MAPPER.get(data['username']) + status = 200 if password and data['password'] == password else 403 + return JsonResponse(data={}, status=status) else: return HttpResponseNotAllowed(permitted_methods=['POST']) @@ -46,4 +48,3 @@ def process_authorization_view(request): # не обращайте внимания на эту вьюху, она нужна лишь для отрисовки страницы авторизации def authorization_view(request): return render(request, 'authorization.html') -