私は自分のプロジェクトでDjango Rest Frameworkを使用しています。 "django.db.utils.ProgrammingError:関係 "患者" は存在しません" 私はエラーを取得するテストを実行するとDjango Rest Framework "django.db.utils.ProgrammingError:relation" patient "does not exist"
class PatientTests(APITestCase):
def test_create_patient(self):
url = reverse('patient-list')
data = {'firstname': 'ivan', 'lastname': 'ivanov'}
response = self.client.post(url, data)
self.assertEqual(response.status_code, status.HTTP_201_CREATED)
self.assertEqual(Patient.objects.count(), 1)
self.assertEqual(Patient.objects.get().firstname, 'ivan')
def test_get_patient(self):
url = reverse('patient-detail', args=[1])
response = self.client.get(url)
self.assertEqual(response.data, {'firstname': 'ivan'})
models.py
class Patient(models.Model):
firstname = models.TextField()
lastname = models.TextField()
secondname = models.TextField()
class Meta:
db_table = "patient"
managed = False
def __str__(self):
return ' '.join([
self.firstname,
self.lastname,
])
:私はテストを書かれている 。私が理解するように、このエラーは、テーブルがテストデータベースに作成されていない場合に発生します。私は何をしなければなりませんか?ありがとう
私達にあなたのモデルを示し、これを行うには、custom test runnerと書き換えて
setup_test_environment
を作成することができます最初に – sebbテーブルを移行してみてください。 Re [Django Migrations](https://docs.djangoproject.com/en/1.10/topics/migrations/) –
私は、Metaクラスでmanaged = Falseの設定をしています。 – regen