ساخت برنامه Todo با Drizzle و PostgreSQL , MySQL و SQLite در NextJS
برای ساخت یک برنامه Todo با استفاده از فریمورک NextJS و Drizzle ORM، در ابتدا، بایستی با اجرای دستور زیر، برنامه NextJS خود را ایجاد کنید:
در ادامه، وارد دایرکتوری پروژه شوید و متناسب با دیتابیس انتخابی خود، مراحل ساخت برنامه را جلو ببرید.
با اجرای دستورات زیر، وابستگیهای برنامه را نصب کنید:
در ادامه، برای به خطا نخوردن برنامه، قطعه کد زیر را بهcompilerOptions در فایلtsconfig.json اضافه کنید:
در مسیر اصلی پروژه، یک فایل به نام env.ایجاد کنید و URI مربوط به دیتابیس خود را در آنجا در متغیرDATABASE_URL قرار دهید، به عنوان مثال:
در دایرکتوری src یک فایل به نام db.ts ایجاد کنید و قطعه کد زیر را در آن، قرار دهید:
مجدداً در دایرکتوری src، یک فایل دیگر به نامschema.ts قرار دهید و قطعه کد زیر را در آن، وارد کنید:
سپس، در مسیر اصلی پروژه، یک فایل به نامdrizzle.config.ts ایجاد کنید و قطعه کد زیر را در آن، قرار دهید:
در نظر داشته باشید که کار با Drizzle در سه مرحله میتواند خلاصه شود:
تعریف Schema
ایجاد فایلهای migration از schema
اجرای migrationها در دیتابیس
اکنون، میتوانید با اجرای دو دستور زیر در ترمینال پروژه اصلی خود، مرحله دوم و سوم را نیز انجام دهید:
سپس، بایستی در مسیر src/pages/api یک فایل به نام todos.ts ایجاد کنید و قطعه کد زیر را، در آن، قرار دهید:
اکنون میتوانید componentهای مربوط به front-end را نیز ایجاد کنید. برای اینکار میتوانید در دایرکتوری src، یک دایرکتوری به نام components ایجاد کنید و درون این دایرکتوری، یک فایل به نام AddTodo.tsx ایجاد کنید و قطعه کد زیر را، در آن، قرار دهید:
همچنین، در همین مسیر، بایستی یک فایل به نام Todo.tsx ایجاد کرده و قطعه کد زیر را، در آن، قرار دهید:
در نهایت، بایستی یک component دیگر به نام Todos.tsx ایجاد کنید و قطعه کد زیر را، در آن قرار دهید:
در انتها، بایستی در فایل src/pages/index.tsx قطعه کد زیر را، قرار دهید:
تمامی کارها انجام شده است و میتوانید برنامه خود را با دستور زیر، اجرا کرده و از آن، استفاده کنید:
یک نمونه کامل از پروژه فوق که آماده مستقر شدن در لیارا است را میتوانید در اینجا مشاهده کنید.