mirror of
https://github.com/kristoferssolo/FOSSDB.git
synced 2025-10-21 17:50:35 +00:00
Added Project update view
This commit is contained in:
parent
31cf63c1ed
commit
b041bf3773
@ -6,4 +6,5 @@ urlpatterns = [
|
|||||||
path("", views.index, name="index"),
|
path("", views.index, name="index"),
|
||||||
path("add/", views.add_project, name="add-project"),
|
path("add/", views.add_project, name="add-project"),
|
||||||
path("<str:username>/<str:project_name>/", views.ProjectDetailView.as_view(), name="project-detail"),
|
path("<str:username>/<str:project_name>/", views.ProjectDetailView.as_view(), name="project-detail"),
|
||||||
|
path("<str:username>/<str:project_name>/update/", views.ProjectUpdateView.as_view(), name="project-update"),
|
||||||
]
|
]
|
||||||
|
|||||||
@ -69,3 +69,22 @@ class ProjectDetailView(DetailView):
|
|||||||
return queryset.filter(owner__username=self.kwargs.get("username"))
|
return queryset.filter(owner__username=self.kwargs.get("username"))
|
||||||
|
|
||||||
|
|
||||||
|
class ProjectUpdateView(LoginRequiredMixin, UserPassesTestMixin, UpdateView):
|
||||||
|
model = Project
|
||||||
|
template_name = "fossdb/update_view.html"
|
||||||
|
form_class = (
|
||||||
|
ProjectForm,
|
||||||
|
HostingPlatformForm,
|
||||||
|
ProgrammingLanguageForm,
|
||||||
|
)
|
||||||
|
slug_field = "name"
|
||||||
|
slug_url_kwarg = "project_name"
|
||||||
|
|
||||||
|
def get_queryset(self):
|
||||||
|
queryset = super().get_queryset()
|
||||||
|
return queryset.filter(owner__username=self.kwargs.get("username"))
|
||||||
|
|
||||||
|
def test_func(self):
|
||||||
|
return self.get_object().owner == self.request.user
|
||||||
|
|
||||||
|
|
||||||
|
|||||||
20
templates/fossdb/update_view.html
Normal file
20
templates/fossdb/update_view.html
Normal file
@ -0,0 +1,20 @@
|
|||||||
|
{% extends "layout.html" %}
|
||||||
|
{% block title %}Update {{ project.name }}{% endblock %}
|
||||||
|
{% block content %}
|
||||||
|
<form method="post">
|
||||||
|
{% csrf_token %}
|
||||||
|
{{ project_form.as_p }}
|
||||||
|
<table>
|
||||||
|
{{ language_formset.management_form }}
|
||||||
|
{% for form in language_formset %}
|
||||||
|
<tr>
|
||||||
|
<td>{{ form.language.label_tag }}</td>
|
||||||
|
<td>{{ form.language }}</td>
|
||||||
|
<td>{{ form.percentage }}</td>
|
||||||
|
</tr>
|
||||||
|
{% endfor %}
|
||||||
|
</table>
|
||||||
|
{{ host_formset.as_p }}
|
||||||
|
<button type="submit">Save</button>
|
||||||
|
</form>
|
||||||
|
{% endblock %}
|
||||||
Loading…
Reference in New Issue
Block a user