Coverage for vocabs/import_views.py: 29%

31 statements  

« prev     ^ index     » next       coverage.py v7.6.0, created at 2024-07-27 11:19 +0000

1from io import TextIOWrapper 

2from django.shortcuts import render 

3from django.contrib.auth.decorators import login_required 

4from .forms import UploadFileForm 

5from .skos import SkosImporter, Csv2SkosImporter 

6 

7 

8@login_required 

9def import_csv(request): 

10 context = {} 

11 if request.method == "POST": 

12 context["form"] = UploadFileForm(request.POST, request.FILES) 

13 if context["form"].is_valid(): 

14 file = TextIOWrapper(request.FILES["file"].file, encoding="utf-8") 

15 skos = Csv2SkosImporter(file) 

16 context["worked"] = skos.importConcepts() 

17 return render(request, "vocabs/import_skos.html", context) 

18 else: 

19 context["form"] = UploadFileForm() 

20 context["worked"] = "upload something first" 

21 return render(request, "vocabs/import_skos.html", context) 

22 

23 

24@login_required 

25def import_skos(request): 

26 context = {} 

27 if request.method == "POST": 

28 context["form"] = UploadFileForm(request.POST, request.FILES) 

29 if context["form"].is_valid(): 

30 file = request.FILES["file"] 

31 skos = SkosImporter(file) 

32 context["worked"] = skos.importConcepts() 

33 return render(request, "vocabs/import_skos.html", context) 

34 else: 

35 context["form"] = UploadFileForm() 

36 context["worked"] = "upload something first" 

37 return render(request, "vocabs/import_skos.html", context)