add ComputerUpdateView

This commit is contained in:
Andreas Zweili 2020-02-27 22:01:07 +01:00
parent 27b67f7950
commit 5adbe849b3
4 changed files with 38 additions and 0 deletions

View File

@ -12,3 +12,19 @@ class ComputerCreateForm(forms.ModelForm):
)
class ComputerUpdateForm(forms.ModelForm):
class Meta:
model = Computer
fields = (
'name',
'description',
'serialnumber',
'category',
'owner',
'customer',
'manufacturer',
'model',
'location',
'user',
'installation_date',
)

View File

@ -0,0 +1,13 @@
{% extends "core/base.html" %}
{% load crispy_forms_tags %}
{% block section_title %}Edit Computer{% endblock %}
{% block content %}
<div class="row">
<form method="post">
{% csrf_token %}
{{ form|crispy }}
<input type="submit" value="Save" class="btn btn-primary">
</form>
</div>
{% endblock %}

View File

@ -11,4 +11,6 @@ urlpatterns = [
name='all_computers'),
path('computer/create/', views.ComputerCreateView.as_view(),
name='computer_create'),
path('update/computer/<int:pk>/', views.ComputerUpdateView.as_view(),
name='computer_update'),
]

View File

@ -4,6 +4,7 @@ from django.views.generic import CreateView
from django.views.generic import UpdateView
from django.shortcuts import get_object_or_404
from django.shortcuts import render
from django.urls import reverse
from django_filters.views import FilterView
from django_tables2 import RequestConfig
@ -19,6 +20,7 @@ from licenses.models import LicenseWithComputer
from .decorators import computer_view_permission
from .filters import ComputerFilter
from .forms import ComputerCreateForm
from .forms import ComputerUpdateForm
from .models import Computer
from .models import ComputerCpuRelation
from .models import ComputerDiskRelation
@ -82,6 +84,11 @@ class ComputerCreateView(LoginRequiredMixin, CreateView):
form_class = ComputerCreateForm
template_name = 'computers/computer_create.html'
def get_success_url(self):
return reverse('computer_update', args=(self.object.pk,))
class ComputerUpdateView(LoginRequiredMixin, UpdateView):
model = Computer
form_class = ComputerUpdateForm
template_name = 'computers/computer_update.html'