Advertisement
pacho_the_python

Untitled

Jun 24th, 2023
628
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Python 3.50 KB | None | 0 0
  1. from django.shortcuts import render, redirect
  2.  
  3. from exam_23_06.web.forms import ProfileCreateForm, FruitCreateForm, FruitEditForm, FruitDeleteForm, \
  4.     ProfileEditForm
  5. from exam_23_06.web.models import Profile, Fruit
  6.  
  7.  
  8. def get_profile():
  9.     users = Profile.objects.all()
  10.     if users:
  11.         return users[0]
  12.     return None
  13.  
  14.  
  15. def index(request):
  16.     profile = get_profile()
  17.     context = {
  18.         'profile': profile,
  19.     }
  20.     return render(request, 'index.html', context)
  21.  
  22.  
  23. def dashboard(request):
  24.     profile = get_profile()
  25.     fruits = Fruit.objects.all()
  26.     context = {
  27.         'profile': profile,
  28.         'fruits': fruits
  29.     }
  30.     return render(request, 'dashboard.html', context)
  31.  
  32.  
  33. def create_fruit(request):
  34.     profile = get_profile()
  35.     if request.method == 'POST':
  36.         form = FruitCreateForm(request.POST)
  37.         if form.is_valid():
  38.             form.save()
  39.             return redirect('dashboard')
  40.     else:
  41.         form = FruitCreateForm()
  42.     context = {
  43.         'profile': profile,
  44.         'form': form
  45.     }
  46.  
  47.     return render(request, 'create-fruit.html', context)
  48.  
  49.  
  50. def fruit_details(request, pk):
  51.     profile = get_profile()
  52.     fruit = Fruit.objects.filter(pk=pk).get()
  53.     context = {
  54.         'fruit': fruit,
  55.         'profile': profile
  56.     }
  57.     return render(request, 'details-fruit.html', context)
  58.  
  59.  
  60. def fruit_edit(request, pk):
  61.     profile = get_profile()
  62.     fruit = Fruit.objects.filter(pk=pk).get()
  63.     if request.method == 'POST':
  64.         form = FruitEditForm(request.POST, instance=fruit)
  65.         if form.is_valid():
  66.             form.save()
  67.             return redirect('dashboard')
  68.  
  69.     else:
  70.         form = FruitEditForm(instance=fruit)
  71.  
  72.     context = {
  73.         'form': form,
  74.         'profile': profile,
  75.         'fruit': fruit
  76.     }
  77.     return render(request, 'edit-fruit.html', context)
  78.  
  79.  
  80. def fruit_delete(request, pk):
  81.     fruit = Fruit.objects.filter(pk=pk).get()
  82.     form = FruitDeleteForm(instance=fruit)
  83.     if request.method == 'POST':
  84.         fruit.delete()
  85.         return redirect('dashboard')
  86.  
  87.     context = {
  88.         'form': form,
  89.         'fruit': fruit
  90.     }
  91.     return render(request, 'delete-fruit.html', context)
  92.  
  93.  
  94. def profile_create(request):
  95.     profile = get_profile()
  96.     if request.method == 'POST':
  97.         form = ProfileCreateForm(request.POST)
  98.         if form.is_valid():
  99.             form.save()
  100.             return redirect('dashboard')
  101.     else:
  102.         form = ProfileCreateForm()
  103.     context = {
  104.         'form': form,
  105.         'profile': profile
  106.     }
  107.     return render(request, 'create-profile.html', context)
  108.  
  109.  
  110. def profile_details(request):
  111.     profile = get_profile()
  112.     fruits = Fruit.objects.all()
  113.     all_posts = None
  114.     if len(fruits) == 0:
  115.         all_posts = 0
  116.     elif len(fruits) > 0:
  117.         all_posts = len(fruits)
  118.     context = {
  119.         'profile': profile,
  120.         'all_posts': all_posts
  121.     }
  122.     return render(request, 'details-profile.html', context)
  123.  
  124.  
  125. def profile_edit(request):
  126.     user = get_profile()
  127.     if request.method == "POST":
  128.         form = ProfileEditForm(request.POST, instance=user)
  129.         if form.is_valid():
  130.             form.save()
  131.             return redirect('profile details')
  132.     else:
  133.         form = ProfileEditForm(instance=user)
  134.  
  135.     context = {
  136.         'form': form,
  137.         'user': user
  138.     }
  139.     return render(request, 'edit-profile.html', context)
  140.  
  141.  
  142. def profile_delete(request):
  143.     return render(request, 'delete-profile.html')
  144.  
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement