Open macthefloof opened 2 years ago
I have made a simple script to run that displays the bug in full.
import asyncio
import mongox
client = mongox.Client("mongodb://localhost:27017")
db = client.get_database("test_db")
class Movie(mongox.Model, db=db, collection="movies"):
name: str
year: int
genres: list[str]
class Book(mongox.Model, db=db, collection="books"):
title: str
author: str
year: int
async def test() -> None:
forrest_gump = await Movie(name="Forrest Gump", year=1994, genres=["Comedy", "Tragedy"]).insert()
nineteen84 = await Book(title="1984", author="George Orwell", year=1949).insert()
print(forrest_gump.name)
print(nineteen84.title)
if __name__ == "__main__":
asyncio.run(test())
In this case, we get the following result when viewed in Compass:
When working with 2 different models, it seems like mongox is ignoring the collection name and inserting into the first one's collection.
Currently, I have 2 models defined in 2 different files:
Firstly, I insert into
server_settings
, but when I try to insert intouser_actions
, the object gets created inside theserver_settings
collection instead.