mirror of
https://github.com/Southampton-RSG/breccia-mapper.git
synced 2026-03-03 11:27:09 +00:00
feat(activities): Add read views for ActivitySeries
This commit is contained in:
19
activities/migrations/0003_rename_activity_series_fk.py
Normal file
19
activities/migrations/0003_rename_activity_series_fk.py
Normal file
@@ -0,0 +1,19 @@
|
|||||||
|
# Generated by Django 2.2.10 on 2020-02-19 13:32
|
||||||
|
|
||||||
|
from django.db import migrations, models
|
||||||
|
import django.db.models.deletion
|
||||||
|
|
||||||
|
|
||||||
|
class Migration(migrations.Migration):
|
||||||
|
|
||||||
|
dependencies = [
|
||||||
|
('activities', '0002_activity_type_medium'),
|
||||||
|
]
|
||||||
|
|
||||||
|
operations = [
|
||||||
|
migrations.AlterField(
|
||||||
|
model_name='activity',
|
||||||
|
name='series',
|
||||||
|
field=models.ForeignKey(blank=True, null=True, on_delete=django.db.models.deletion.PROTECT, related_name='activities', to='activities.ActivitySeries'),
|
||||||
|
),
|
||||||
|
]
|
||||||
@@ -68,7 +68,8 @@ class Activity(models.Model):
|
|||||||
blank=False, null=False)
|
blank=False, null=False)
|
||||||
|
|
||||||
#: Optional :class:`ActivitySeries` to which this activity belongs
|
#: Optional :class:`ActivitySeries` to which this activity belongs
|
||||||
series = models.ForeignKey(ActivitySeries, related_name='instances',
|
series = models.ForeignKey(ActivitySeries,
|
||||||
|
related_name='activities',
|
||||||
on_delete=models.PROTECT,
|
on_delete=models.PROTECT,
|
||||||
blank=True, null=True)
|
blank=True, null=True)
|
||||||
|
|
||||||
|
|||||||
50
activities/templates/activities/activity_series/detail.html
Normal file
50
activities/templates/activities/activity_series/detail.html
Normal file
@@ -0,0 +1,50 @@
|
|||||||
|
{% extends 'base.html' %}
|
||||||
|
|
||||||
|
{% block content %}
|
||||||
|
<nav aria-label="breadcrumb">
|
||||||
|
<ol class="breadcrumb">
|
||||||
|
<li class="breadcrumb-item">
|
||||||
|
<a href="{% url 'activities:activity-series.list' %}">Activity Series</a>
|
||||||
|
</li>
|
||||||
|
<li class="breadcrumb-item active" aria-current="page">{{ object }}</li>
|
||||||
|
</ol>
|
||||||
|
</nav>
|
||||||
|
|
||||||
|
<hr>
|
||||||
|
|
||||||
|
<dl>
|
||||||
|
<dt>Type</dt>
|
||||||
|
<dd>{{ activity_series.type }}</dd>
|
||||||
|
|
||||||
|
<dt>Medium</dt>
|
||||||
|
<dd>{{ activity_series.medium }}</dd>
|
||||||
|
</dl>
|
||||||
|
|
||||||
|
<hr>
|
||||||
|
|
||||||
|
<table class="table table-borderless">
|
||||||
|
<thead>
|
||||||
|
<tr>
|
||||||
|
<th>Name</th>
|
||||||
|
</tr>
|
||||||
|
</thead>
|
||||||
|
|
||||||
|
<tbody>
|
||||||
|
{% for activity in activity_series.activities.all %}
|
||||||
|
<tr>
|
||||||
|
<td>{{ activity }}</td>
|
||||||
|
<td>
|
||||||
|
<a class="btn btn-sm btn-info"
|
||||||
|
href="{% url 'activities:activity.detail' pk=activity.pk %}">Details</a>
|
||||||
|
</td>
|
||||||
|
</tr>
|
||||||
|
|
||||||
|
{% empty %}
|
||||||
|
<tr>
|
||||||
|
<td>No records</td>
|
||||||
|
</tr>
|
||||||
|
{% endfor %}
|
||||||
|
</tbody>
|
||||||
|
</table>
|
||||||
|
|
||||||
|
{% endblock %}
|
||||||
37
activities/templates/activities/activity_series/list.html
Normal file
37
activities/templates/activities/activity_series/list.html
Normal file
@@ -0,0 +1,37 @@
|
|||||||
|
{% extends 'base.html' %}
|
||||||
|
|
||||||
|
{% block content %}
|
||||||
|
<nav aria-label="breadcrumb">
|
||||||
|
<ol class="breadcrumb">
|
||||||
|
<li class="breadcrumb-item active" aria-current="page">Activity Series</li>
|
||||||
|
</ol>
|
||||||
|
</nav>
|
||||||
|
|
||||||
|
<hr>
|
||||||
|
|
||||||
|
<table class="table table-borderless">
|
||||||
|
<thead>
|
||||||
|
<tr>
|
||||||
|
<th>Name</th>
|
||||||
|
</tr>
|
||||||
|
</thead>
|
||||||
|
|
||||||
|
<tbody>
|
||||||
|
{% for activity_series in activity_series_list.all %}
|
||||||
|
<tr>
|
||||||
|
<td>{{ activity_series }}</td>
|
||||||
|
<td>
|
||||||
|
<a class="btn btn-sm btn-info"
|
||||||
|
href="{% url 'activities:activity-series.detail' pk=activity_series.pk %}">Details</a>
|
||||||
|
</td>
|
||||||
|
</tr>
|
||||||
|
|
||||||
|
{% empty %}
|
||||||
|
<tr>
|
||||||
|
<td>No records</td>
|
||||||
|
</tr>
|
||||||
|
{% endfor %}
|
||||||
|
</tbody>
|
||||||
|
</table>
|
||||||
|
|
||||||
|
{% endblock %}
|
||||||
@@ -6,6 +6,14 @@ from . import views
|
|||||||
app_name = 'activities'
|
app_name = 'activities'
|
||||||
|
|
||||||
urlpatterns = [
|
urlpatterns = [
|
||||||
|
path('activity-series',
|
||||||
|
views.ActivitySeriesListView.as_view(),
|
||||||
|
name='activity-series.list'),
|
||||||
|
|
||||||
|
path('activity-series/<int:pk>',
|
||||||
|
views.ActivitySeriesDetailView.as_view(),
|
||||||
|
name='activity-series.detail'),
|
||||||
|
|
||||||
path('activities',
|
path('activities',
|
||||||
views.ActivityListView.as_view(),
|
views.ActivityListView.as_view(),
|
||||||
name='activity.list'),
|
name='activity.list'),
|
||||||
|
|||||||
@@ -6,6 +6,24 @@ from django.views.generic import DetailView, ListView
|
|||||||
from . import models
|
from . import models
|
||||||
|
|
||||||
|
|
||||||
|
class ActivitySeriesListView(ListView):
|
||||||
|
"""
|
||||||
|
View displaying a list of :class:`ActivitySeries`.
|
||||||
|
"""
|
||||||
|
model = models.ActivitySeries
|
||||||
|
template_name = 'activities/activity_series/list.html'
|
||||||
|
context_object_name = 'activity_series_list'
|
||||||
|
|
||||||
|
|
||||||
|
class ActivitySeriesDetailView(DetailView):
|
||||||
|
"""
|
||||||
|
View displaying details of a single :class:`ActivitySeries`.
|
||||||
|
"""
|
||||||
|
model = models.ActivitySeries
|
||||||
|
template_name = 'activities/activity_series/detail.html'
|
||||||
|
context_object_name = 'activity_series'
|
||||||
|
|
||||||
|
|
||||||
class ActivityListView(ListView):
|
class ActivityListView(ListView):
|
||||||
"""
|
"""
|
||||||
View displaying a list of :class:`Activity`.
|
View displaying a list of :class:`Activity`.
|
||||||
|
|||||||
@@ -64,6 +64,14 @@
|
|||||||
<a href="{% url 'people:person.list' %}" class="nav-link">People</a>
|
<a href="{% url 'people:person.list' %}" class="nav-link">People</a>
|
||||||
</li>
|
</li>
|
||||||
|
|
||||||
|
<li class="nav-item">
|
||||||
|
<a href="{% url 'activities:activity-series.list' %}" class="nav-link">Activity Series</a>
|
||||||
|
</li>
|
||||||
|
|
||||||
|
<li class="nav-item">
|
||||||
|
<a href="{% url 'activities:activity.list' %}" class="nav-link">Activities</a>
|
||||||
|
</li>
|
||||||
|
|
||||||
{% if request.user.is_superuser %}
|
{% if request.user.is_superuser %}
|
||||||
<li class="nav-item">
|
<li class="nav-item">
|
||||||
<a href="{% url 'admin:index' %}" class="nav-link">Admin</a>
|
<a href="{% url 'admin:index' %}" class="nav-link">Admin</a>
|
||||||
|
|||||||
Reference in New Issue
Block a user