export const Users = pgTable("users", {
id: uuid('id').primaryKey().defaultRandom(),
});
export const UsersRelations = relations(Users, ({ many }) => ({
followers: many(Followers), // how do I separate these?
following: many(Followers), // is it even possible?
}))
export const Following = pgTable("followers", {
userId: uuid('user_id').references(() => Users.id).notNull(),
followingId: uuid('following_id').references(() => Users.id).notNull(),
}, (table) => ({
cpk: primaryKey(table.userId, table.followingId)
}));
export const FollowingRelations = relations(Following, ({ one }) => ({
user: one(Users, {
fields: [Following.userId],
references: [Users.id],
}),
following: one(Users, {
fields: [Following.followingId],
references: [Users.id],
})
}))
export const Users = pgTable("users", {
id: uuid('id').primaryKey().defaultRandom(),
});
export const UsersRelations = relations(Users, ({ many }) => ({
followers: many(Followers), // how do I separate these?
following: many(Followers), // is it even possible?
}))
export const Following = pgTable("followers", {
userId: uuid('user_id').references(() => Users.id).notNull(),
followingId: uuid('following_id').references(() => Users.id).notNull(),
}, (table) => ({
cpk: primaryKey(table.userId, table.followingId)
}));
export const FollowingRelations = relations(Following, ({ one }) => ({
user: one(Users, {
fields: [Following.userId],
references: [Users.id],
}),
following: one(Users, {
fields: [Following.followingId],
references: [Users.id],
})
}))