fix parsing related models from dictionaries

This commit is contained in:
collerek
2020-08-04 21:46:13 +02:00
parent eb99f28431
commit 6fa7c65b8d
4 changed files with 15 additions and 4 deletions

View File

@ -16,6 +16,15 @@ database = databases.Database(DATABASE_URL, force_rollback=True)
metadata = sqlalchemy.MetaData()
class Category(orm.Model):
__tablename__ = "cateries"
__metadata__ = metadata
__database__ = database
id = orm.Integer(primary_key=True)
name = orm.String(length=100)
class Item(orm.Model):
__tablename__ = "users"
__metadata__ = metadata
@ -23,6 +32,7 @@ class Item(orm.Model):
id = orm.Integer(primary_key=True)
name = orm.String(length=100)
category = orm.ForeignKey(Category, nullable=True)
@app.post("/items/", response_model=Item)
@ -34,9 +44,8 @@ client = TestClient(app)
def test_read_main():
response = client.post("/items/", json={'name': 'test', 'id': 1})
print(response.json())
response = client.post("/items/", json={'name': 'test', 'id': 1, 'category': {'name': 'test cat'}})
assert response.status_code == 200
assert response.json() == {'name': 'test', 'id': 1}
assert response.json() == {'category': {'id': None, 'name': 'test cat'}, 'id': 1, 'name': 'test'}
item = Item(**response.json())
assert item.id == 1