simpsons redirection working
This commit is contained in:
@@ -5,31 +5,46 @@ import random
|
||||
# Create your views here.
|
||||
from django.http import HttpResponse
|
||||
from django.db.models import Count
|
||||
from django.shortcuts import render
|
||||
from django.shortcuts import redirect
|
||||
from apps.random_simpsons.models import SimpsonsData
|
||||
|
||||
|
||||
def hello(request):
|
||||
return HttpResponse('<h1>Hello Django!</h1>')
|
||||
|
||||
def random_episode(request):
|
||||
def episode_generator(request):
|
||||
simpsons_data_object = SimpsonsData.objects.using('simpsons_db')
|
||||
maximum_number_of_seasons = SimpsonsData.objects.aggregate(unique_season=Count('season', distinct=True))['unique_season']
|
||||
|
||||
boolean_restart = True;
|
||||
while (boolean_restart):
|
||||
maximum_number_of_seasons = simpsons_data_object.aggregate(unique_season=Count('season', distinct=True))['unique_season']
|
||||
print("maximum_number_of_seasons: "+str(maximum_number_of_seasons))
|
||||
|
||||
random_seasons = random.randint(1, maximum_number_of_seasons)
|
||||
print("random season: " + str(random_seasons))
|
||||
|
||||
print("--- START SIMPSONS LOG ---")
|
||||
simpson_stuff = simpsons_data_object.filter(season=random_seasons)
|
||||
for line in simpson_stuff:
|
||||
print(line)
|
||||
print("--- END SIMPSONS LOG ---")
|
||||
maximum_number_of_episodes = simpsons_data_object.filter(season=random_seasons).count()
|
||||
print("maximum_number_of_episodes: "+str(maximum_number_of_episodes))
|
||||
|
||||
random_episode = random.randint(1, maximum_number_of_episodes)
|
||||
print("random episode: " + str(random_episode))
|
||||
|
||||
# Keeps Django happy by returning a valid web response
|
||||
return HttpResponse('Check your terminal log!')
|
||||
episode_seen = simpsons_data_object.filter(season=random_seasons, episode=random_episode).values('seen')[0]['seen']
|
||||
|
||||
if not(episode_seen):
|
||||
boolean_restart = False
|
||||
else:
|
||||
print("episode "+str(random_episode)+" from season "+str(random_seasons)+" already seen")
|
||||
|
||||
random_url = simpsons_data_object.filter(season=random_seasons, episode=random_episode).values('url')[0]['url']
|
||||
|
||||
#Set episode as seen
|
||||
# It will still update an already seem episode but it works and I'm lazy
|
||||
|
||||
simpsons_data_object.filter(season=random_seasons, episode=random_episode).values('seen').update(seen=True)
|
||||
|
||||
return redirect(str(random_url))
|
||||
#return HttpResponse('Check your terminal log!')
|
||||
|
||||
def simpsons(request):
|
||||
#dev settings
|
||||
|
||||
@@ -115,7 +115,7 @@ DATABASES = {
|
||||
'PORT': os.environ.get('DB_PORT'),
|
||||
},
|
||||
}
|
||||
DATABASE_ROUTERS = ['django_code.routers.ProjectDatabaseRouter']
|
||||
#DATABASE_ROUTERS = ['django_code.routers.ProjectDatabaseRouter']
|
||||
|
||||
# Password validation
|
||||
# https://docs.djangoproject.com/en/4.2/ref/settings/#auth-password-validators
|
||||
|
||||
@@ -36,7 +36,7 @@ urlpatterns = [
|
||||
path('hello/', random_simpsons.hello),
|
||||
path('simpsons/', random_simpsons.simpsons),
|
||||
path('download_file/', random_simpsons.download_file),
|
||||
path('print/', random_simpsons_view.random_episode),
|
||||
path('print/', random_simpsons_view.episode_generator),
|
||||
|
||||
################### Redirect ###################
|
||||
path('redirect/hello/', website_redirectionapp.hello),
|
||||
|
||||
Reference in New Issue
Block a user