verejny kontaktnicek #71
					 1 changed files with 1 additions and 1 deletions
				
			
		|  | @ -124,7 +124,7 @@ def soustredeniKontaktnicekView(request, soustredeni, typ): | ||||||
| 	 | 	 | ||||||
| 	kontaktnicky = { | 	kontaktnicky = { | ||||||
|  | |||||||
| 		'pdf': (soustredeni.kontaktnicek_pdf, 'applcation/pdf', 'rb'), | 		'pdf': (soustredeni.kontaktnicek_pdf, 'applcation/pdf', 'rb'), | ||||||
| 
				
					
						ledoian
						commented  Poněkud se mi nelíbí místní duplikace kódu, když se tam mění dohromady tři věci (až přidáme další, tak někde něco zapomeneme přepsat a bude to bug…). Co třeba: Poněkud se mi nelíbí místní duplikace kódu, když se tam mění dohromady tři věci (až přidáme další, tak někde něco zapomeneme přepsat a bude to bug…). Co třeba:
```python3
# typ -> (field, mime_type, otevreni)
kontaktnicky = {
|   'pdf': (soustredeni.kontaktnicek_pdf, 'applcation/pdf', 'rb'),
|   'vcf': (soustredeni.kontaktnicek_vcf, 'text/vcard', 'r'), # vcf je texťák, nevím, jestli je potřeba ho otevítat binárně.
}
try:
	field, mime, otevreni = kontaktnicky[typ]
except KeyError as e:
	raise ValueError("Neznámý typ kontaktníčku") from e
if not field:
|   ...
with open(field.path, otevreni) as soubor:
|   return HttpResponse(soubor.read(), content_type=mime)
``` 
				
					
						ledoian
						commented  Uh, ten  Uh, ten `if not field: ...` byl náznak toho, že není potřeba výčet typů v `if (not soustredeni.kontaktnicek_pdf and typ == "pdf") or (not soustredeni.kontaktnicek_vcf and typ == "vcf"):`, sorry za neexplicitnost. | |||||||
| 		'vcf': (soustredeni.kontaktnicek_vcf, 'text/vcard', 'rb'), # vcf je texťák, nevím, jestli je potřeba ho otevítat binárně. | 		'vcf': (soustredeni.kontaktnicek_vcf, 'text/vcard', 'rb'), | ||||||
| 	} | 	} | ||||||
| 	 | 	 | ||||||
| 	try: | 	try: | ||||||
|  |  | ||||||
		Loading…
	
		Reference in a new issue
	
	
404 není správný návratový kód (kontaktníček zjevně existuje, ale nemám k němu přístup), má být 403 (
PermissionDeniedse myslím jmenuje ta Djangová výjimka).