diff --git a/projects/templates/projects/project_detail.html b/projects/templates/projects/project_detail.html new file mode 100644 index 0000000..e84ead5 --- /dev/null +++ b/projects/templates/projects/project_detail.html @@ -0,0 +1,43 @@ +{% extends "codeeve/index.html" %} + +{% block header %} +{% endblock %} + +{% block content %} +
+ +
+
+ Go to list all projects + Update the project +
+
+
+

{{ project.title }}

+

{{ project.created_at|date:"D d M Y" }}

+
+

{{ project.difficulty }}

+
+

{{ project.description}}

+ {% if project.max_members > project.participants.count %} + + {% endif %} +
+ +
+
+
+ {% if project.image %} + + {% endif %} +
+
+ +
+ +
+ +
+
+ +{% endblock %} diff --git a/projects/templates/projects/create_project.html b/projects/templates/projects/project_form.html similarity index 100% rename from projects/templates/projects/create_project.html rename to projects/templates/projects/project_form.html diff --git a/projects/templates/projects/project_list.html b/projects/templates/projects/project_list.html index 9ad6ad4..d59196c 100644 --- a/projects/templates/projects/project_list.html +++ b/projects/templates/projects/project_list.html @@ -7,43 +7,33 @@
+ Create a project + {% for project in object_list %}
- Create a project - {% for project in object_list %}

{{ project.title }}

-

{{ project.created_at|date:"D d M Y" }}

-
-

{{ project.difficulty }}

-

{{ project.description}}

+
+

{{ project.difficulty }}

+
+ Details {% if project.max_members > project.participants.count %} {% endif %} -

- {% if project.image %} {% endif %}
- {% endfor %}
+ {% endfor %}
-
diff --git a/projects/urls.py b/projects/urls.py index 6c7ddbe..1c49e00 100644 --- a/projects/urls.py +++ b/projects/urls.py @@ -1,9 +1,20 @@ from django.conf.urls import url -from projects.views import ProjectListView, ProjectCreate +from projects.views import (ProjectListView, ProjectCreate, ProjectDetailView, + ProjectUpdate) urlpatterns = [ - url(r'^$', ProjectListView.as_view(), name='project_list'), - url(r'^create/$', ProjectCreate.as_view(), name='project_create'), + url(r'^$', + ProjectListView.as_view(), + name='project_list'), + url(r'^details/(?P\d+)/$', + ProjectDetailView.as_view(), + name='project_details'), + url(r'^create/$', + ProjectCreate.as_view(), + name='project_create'), + url(r'^details/(?P\d+)/update/$', + ProjectUpdate.as_view(), + name='project_update'), ] diff --git a/projects/views.py b/projects/views.py index 361f3bb..1a45daf 100644 --- a/projects/views.py +++ b/projects/views.py @@ -1,26 +1,27 @@ from django.views.generic.list import ListView -from django.views.generic.edit import CreateView, UpdateView, DeleteView +from django.views.generic.detail import DetailView +from django.views.generic.edit import CreateView, UpdateView from django.core.urlresolvers import reverse_lazy from .models import Project class ProjectCreate(CreateView): - template_name = 'projects/create_project.html' model = Project - fields = '__all__' + fields = ['title', 'description', 'max_members', 'difficulty', + 'image', 'participants', 'coach', 'owner'] success_url = reverse_lazy('project_list') class ProjectUpdate(UpdateView): model = Project - fields = '__all__' - success_url = reverse_lazy('project_list') + fields = ['title', 'description', 'max_members', 'difficulty', + 'image', 'participants', 'coach'] + success_url = reverse_lazy('project_details') -class ProjectDelete(DeleteView): +class ProjectListView(ListView): model = Project - success_url = reverse_lazy('project_list') -class ProjectListView(ListView): +class ProjectDetailView(DetailView): model = Project