0
User
モデルとAccount
モデルの2つのDjangoモデルを作成しました。 User
モデルでは、私はすべての情報を持っており、Account
には、そのユーザーのアカウントの詳細があります。
私はユーザーを作成すると、それぞれのアカウントオブジェクトも作成されたビューを設計しました。
URL:/user/
は新しいユーザーとアカウントオブジェクトを作成します。
しかし、私はAPIをチェックするためのテストを書くときに、私は新しいユーザーを作成しました。ユーザーオブジェクトにアクセスできますが、アカウントの詳細にアクセスするとmodels.object doesn't exist
がスローされます。Djangoテストapisモデルオブジェクトが存在しません
class User(models.Model):
user_name = models.CharField(max_length=35)
first_name = models.CharField(max_length=35)
last_name = models.CharField(max_length=35)
email = models.EmailField(max_length=255)
class Account(models.Model):
user = models.ForeignKey(User, on_delete = models.CASCADE)
balance = models.IntegerField(default = 0)
def post(self, request):
received_json_data = json.loads(request.body.decode("utf-8"))
user = User(user_name=received_json_data['user_name'], first_name=received_json_data['first_name'],
last_name=received_json_data['last_name'], email=received_json_data['email'])
user.save()
account = Account(user=user);
account.save();
class TestUser(TestCase):
def setUp(self):
self.c = Client()
user1 = {"email": "[email protected]", "user_name": "ramu", "first_name": "ramesh", "last_name": "yadav"}
data1 = json.dumps(user1)
self.response = self.c.post('/user/', data1, content_type="application/json")
self.assertEqual(self.response.status_code, 200)
account = Account.objects.get(pk =1)
こんにちはmaverickしかし、私はそのアカウントの詳細を与える 'アカウント/ ID'のようなAPIを持っています。そこにはまだ同じエラーが表示されています。どこでメソッドをpkで実装したか。 –
これは、アカウントオブジェクトが作成されなかったか、間違った主キーを使用していることを意味します。アカウントが存在するかどうかデータベースにチェックインします。 – maverick
私のすべてのAPIは郵便配達員で正常に動作しています。今私はこれらのAPIのテストケースを書いています。上記で作成したユーザーアカウントユーザーのclient.getメソッドにアクセスしています。 –