aboutsummaryrefslogtreecommitdiffstatshomepage
path: root/examples/with-prisma/packages/database/src/seed.ts
diff options
context:
space:
mode:
Diffstat (limited to 'examples/with-prisma/packages/database/src/seed.ts')
-rw-r--r--examples/with-prisma/packages/database/src/seed.ts36
1 files changed, 36 insertions, 0 deletions
diff --git a/examples/with-prisma/packages/database/src/seed.ts b/examples/with-prisma/packages/database/src/seed.ts
new file mode 100644
index 0000000..a5d7752
--- /dev/null
+++ b/examples/with-prisma/packages/database/src/seed.ts
@@ -0,0 +1,36 @@
+import { prisma } from ".";
+
+import type { User } from "@prisma/client";
+
+const DEFAULT_USERS = [
+ // Add your own user to pre-populate the database with
+ {
+ name: "Tim Apple",
+ email: "tim@apple.com",
+ },
+] as Array<Partial<User>>;
+
+(async () => {
+ try {
+ await Promise.all(
+ DEFAULT_USERS.map((user) =>
+ prisma.user.upsert({
+ where: {
+ email: user.email!,
+ },
+ update: {
+ ...user,
+ },
+ create: {
+ ...user,
+ },
+ })
+ )
+ );
+ } catch (error) {
+ console.error(error);
+ process.exit(1);
+ } finally {
+ await prisma.$disconnect();
+ }
+})();