diff --git a/homepage/admin.py b/homepage/admin.py index 864374b..700ee70 100644 --- a/homepage/admin.py +++ b/homepage/admin.py @@ -1,7 +1,7 @@ from django.contrib import admin -from .models import Route, User +from .models import Route#, User admin.site.register(Route) -admin.site.register(User) \ No newline at end of file +# admin.site.register(User) \ No newline at end of file diff --git a/homepage/migrations/0003_auto_20210816_2334.py b/homepage/migrations/0003_auto_20210816_2334.py new file mode 100644 index 0000000..3109605 --- /dev/null +++ b/homepage/migrations/0003_auto_20210816_2334.py @@ -0,0 +1,25 @@ +# Generated by Django 3.2.6 on 2021-08-16 21:34 + +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), + ('homepage', '0002_auto_20210811_1624'), + ] + + operations = [ + migrations.AddField( + model_name='route', + name='user', + field=models.ForeignKey(default=1, on_delete=django.db.models.deletion.DO_NOTHING, to='auth.user'), + preserve_default=False, + ), + migrations.DeleteModel( + name='User', + ), + ] diff --git a/homepage/models.py b/homepage/models.py index bd4e4db..d828c29 100644 --- a/homepage/models.py +++ b/homepage/models.py @@ -1,5 +1,5 @@ from django.db import models - +from django.contrib.auth.models import User # Create your models here. from django.db import models @@ -12,15 +12,21 @@ class Route(models.Model): # route_start = # route_finish = # stops = - def __str__(self): - return self.route_name - -class User(models.Model): - user_id = models.IntegerField() - user_name = models.CharField(max_length=200) - password = models.IntegerField(default=0) - route = models.ForeignKey(Route, on_delete=models.DO_NOTHING) + # tutaj dodaje klucz obcy do Użytkownika. Każda trasa jest przypisana do jakiegoś + # użytkownika. + user = models.ForeignKey(User, on_delete=models.DO_NOTHING) def __str__(self): - return self.user_name + return self.route_name +# Zakomentowałem model Usera, bo do logowania używasz model Usera wbudowany +# w Django (model User z modułu django.contrib.auth.models) +# class User(models.Model): +# user_id = models.IntegerField() +# user_name = models.CharField(max_length=200) +# password = models.IntegerField(default=0) +# # route = models.ForeignKey(Route, on_delete=models.DO_NOTHING) +# +# def __str__(self): +# return self.user_name +# diff --git a/homepage/templates/homepage/routes.html b/homepage/templates/homepage/routes.html new file mode 100644 index 0000000..eeed97d --- /dev/null +++ b/homepage/templates/homepage/routes.html @@ -0,0 +1,12 @@ + + +
+ +{{ route }}
+ {% endfor %} + + \ No newline at end of file diff --git a/homepage/views.py b/homepage/views.py index 7fb0e64..884a0f9 100644 --- a/homepage/views.py +++ b/homepage/views.py @@ -1,13 +1,31 @@ from django.shortcuts import redirect, render from django.contrib.auth.decorators import login_required from users.views import register +from homepage.models import Route +# jeżeli użytkownik jest niezalogowany przekierowujemy na stronę logowania +@login_required() def home(request): - if request.user.is_authenticated: - return redirect('/users/profile.html') # nie mam pojecia jak zrobic to inaczej - else: - return register(request) + + # wyciągamy usera + user = request.user + + # Z bazy wyciągamy wszystkie trasy przypisane do danego użytkownika + routes = Route.objects.filter(user=user) + + return render( + request, + 'homepage/routes.html', + context={ + 'routes': routes # trasy przekazujemy w kontekście do szablony (a w szablonie iterujemy się po nich) + } + ) + + # if request.user.is_authenticated: + # return redirect('/users/profile.html') # nie mam pojecia jak zrobic to inaczej + # else: + # return register(request) @login_required