Ich möchte testen, ein benutzerdefiniertes Dokument Dateiformular in meiner Anwendung im Admin-Bereich hinzufügen. Leider ist die Django-Dokumentation ziemlich unklar.Test Django Admin Formular
Das ist mein Modell:
class Document(models.Model):
pub_date = models.DateTimeField('date published')
title = models.CharField(max_length=255)
description = models.TextField()
pdf_doc = models.FileField(upload_to=repo_dir, max_length=255)
Dies ist mein Test:
from django.test import TestCase
from django.test import Client
from django.utils import timezone
from datetime import datetime, timedelta
class DocumentAdminFormTest(TestCase):
def test_add_document_form(self):
client = Client()
change_url = 'admin/docrepo/document/add/'
today = datetime.today()
filepath = u'/filepath/to/some/pdf/'
data = {'title': 'TEST TITLE',
'description': 'TEST DESCRIPTION',
'pub_date0': '2000-01-01',
'pub_date1': '00:00:00',
'pdf_doc': filepath,
}
response = client.post(change_url, data)
print('REASON PHRASE: ' + response.reason_phrase)
self.assertIs(response.status_code, 200)
Ich mag würde 200 Antwort zu erhalten, während das Formular mit gezeigten Daten veröffentlichen. Aus irgendeinem Grund gibt response.status_code 404 und response.reason_phrase gibt "Not Found". Ist es möglich, dass das Problem im Verzeichnis liegt?
Normalerweise beginnt die URL mit einem Schrägstrich. –
Ok, das hat mich ein bisschen weiter getrieben ... jetzt gibt response.status_code 304 zurück und response.reason_phrase gibt 'Found'. Ist es möglich, dass es wegen fehlenden Anmeldeschritts ist? – asdfgh