Skip to content

Commit 145a4c7

Browse files
Luke TuiteLuke Tuite
authored andcommitted
adding models, view method, and template dropdown to project form
1 parent ed1305b commit 145a4c7

File tree

3 files changed

+18
-7
lines changed

3 files changed

+18
-7
lines changed

ingest/models.py

Lines changed: 8 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -18,6 +18,14 @@ def __str__(self):
1818
funded_by = models.CharField(max_length=256)
1919
is_biccn = models.BooleanField(default=False)
2020

21+
class Consortium(models.Model):
22+
short_name = models.CharField(max_length=256)
23+
long_name = models.CharField(max_length=1000)
24+
25+
class ProjectConsortium(models.Model):
26+
project = models.ForeignKey(Project, on_delete=models.SET_NULL, blank=False, null=True)
27+
constorium = models.ForeignKey(Consortium, on_delete=models.SET_NULL, null = True, blank=True)
28+
2129
class People(models.Model):
2230
def __str__(self):
2331
return self.name

ingest/templates/ingest/project_form.html

Lines changed: 7 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -17,11 +17,13 @@ <h1>Create a new project</h1>
1717
<label for="name">Project Name:</label>
1818
<input type="text" id="name" name="name">
1919

20-
<label for="is_biccn">Is BICCN?:</label>
21-
<select name="is_biccn" id="is_biccn">
22-
<option value="True"> True </option>
23-
<option value="False"> False </option>
24-
</select>
20+
<label for="consortia">Consortia Affiliation:</label>
21+
<p><strong>Select your project's constorium affiliation. You may control-click (Windows) or command-click (Mac) to select more than one.</strong></p>
22+
<select multiple size={{consortia.count}}>
23+
{% for c in consortia %}
24+
<option value={{c.id}}>{{c.long_name}} ({{c.short_name}})</option>
25+
{% endfor %}
26+
</select>
2527
<label for="funded_by">Funded By:</label>
2628
<input type="text" id="funded_by" name="funded_by">
2729
</form>

ingest/views.py

Lines changed: 3 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -27,7 +27,7 @@
2727
from .field_list import required_metadata
2828
from .filters import CollectionFilter
2929
from .forms import CollectionForm, ImageMetadataForm, DescriptiveMetadataForm, UploadForm, collection_send
30-
from .models import UUID, Collection, ImageMetadata, DescriptiveMetadata, Project, ProjectPeople, People, Project, EventsLog, Contributor, Funder, Publication, Instrument, Dataset, Specimen, Image, Sheet
30+
from .models import UUID, Collection, ImageMetadata, DescriptiveMetadata, Project, ProjectPeople, People, Project, EventsLog, Contributor, Funder, Publication, Instrument, Dataset, Specimen, Image, Sheet, Consortium
3131
from .tables import CollectionTable, DescriptiveMetadataTable, CollectionRequestTable
3232
import uuid
3333
import datetime
@@ -232,12 +232,13 @@ def project_form(request):
232232
current_user = request.user
233233
people = People.objects.get(auth_user_id_id = current_user.id)
234234
project_person = ProjectPeople.objects.filter(people_id = people.id).all()
235+
consortia = Consortium.objects.all
235236
for attribute in project_person:
236237
if attribute.is_pi:
237238
pi = True
238239
else:
239240
pi = False
240-
return render(request, 'ingest/project_form.html', {'pi':pi})
241+
return render(request, 'ingest/project_form.html', {'pi':pi, 'consortia':consortia})
241242

242243
# takes the data from project_form
243244
@login_required

0 commit comments

Comments
 (0)