
I'm trying for the first time appwrite on 2 projects and after I've tested appwrite types generation with the cli I'm a little bit confused why it doesn't include or handle the $id field which is fundamental to handle relationships.
I'm not finding anything about it in the documentation and I understand that it is reported that the relationships are in an experimental phase but rather it makes me think that I'm doing something wrong or is it intentional?
What is the best way to relate collections of documents in this case?
Thank you very much 🙂

$id and similar attributes are apart of the models provided by appwrite. Your type should extend appwrites base type. Does the type generator not do this?

Similar to this
export type Books = Models.Document & {
name: string;
author: string;
releaseYear: string | null;
category: Category | null;
genre: string[] | null;
isCheckedOut: boolean;
}
We are extending the Models.Document type, which includes $id, $createdAt, etc.

I only saw right now that when generating types with -l ts option it does generate the extended classes, but this doesn't happen for dart and PHP. 🤔

seems like only ts pulls with the base types. idk if that's intended or not. Seems weird to me.
Recommended threads
- Node.jd 17.1.0 npm publish
Can you please publish the latest version to npm. I just did a big refactoring to improve my code with the new upsert but I can’t publish/test because it’s not ...
- Implementing Offline Login Caching with ...
Hi, I'm evaluating Appwrite for my Flutter app and need clarification on handling offline login sessions. My app requires users to log in, with the session ca...
- Upsert Announcement: Swift Not Working
With the Upsert announcement, we are not having success with upsert in Swift. We’ve tried the following (from the docs) do { let doc = try await databases...
