تولید ماژولها
هسته اصلی این پکیج، دستور آرتیسان make:module است. این یک ابزار قدرتمند است که میتواند یک ماژول کامل و آماده برای تست را با یک دستور واحد تولید کند.
استفاده پایه
برای تولید یک ماژول جدید، فقط کافی است نامی برای آن ارائه دهید:
bash
php artisan make:module ProductName
این دستور یک ماژول ProductName با کامپوننتهای پیشفرض تولید میکند که میتوانید آنها را در فایل config/module-generator.php پیکربندی کنید.
گزینههای دستور
دستور make:module با گزینههای مختلفی ارائه میشود که به شما امکان میدهد ماژول تولید شده را بر اساس نیازهای خاص خود سفارشی کنید. در اینجا خلاصهای از گزینههای موجود آمده است:
| آپشن | نام مستعار | توضیحات |
|---|---|---|
--api | -a | یک کنترلر API-oriented تولید میکند که فضای نام API پیکربندی شده را هدف قرار میدهد. |
--controller=Subdir | -c | کنترلر را در یک زیرپوشه قرار میدهد (تولید کنترلر را اجباری میکند). |
--requests | -r | درخواستهای فرم Store و Update را تولید میکند. |
--tests | -t | تولید تستهای ویژگی CRUD را اجباری میکند. |
--no-controller | -nc | از تولید کنترلر صرفنظر میکند. |
--no-resource | -nr | از تولید منابع API صرفنظر میکند. |
--no-dto | -nd | از تولید DTO صرفنظر میکند. |
--no-test | -nt | از تولید تستهای ویژگی صرفنظر میکند. |
--no-provider | -np | از ایجاد provider و ثبت خودکار آن صرفنظر میکند. |
--swagger | -sg | حاشیهنویسیهای OpenAPI (@OA) را در داخل App\Docs\{Module}Doc تولید میکند. |
--no-swagger | – | حاشیهنویسیهای Swagger را حتی اگر به صورت پیشفرض فعال باشند، به صراحت غیرفعال میکند. |
--from-migration= | -fm | یک مسیر یا راهنمایی برای مهاجرت برای استنتاج فیلدها و روابط ارائه میدهد. |
--fields= | – | تعریف شمای درونخطی (جدا شده با کاما) برای ماژولهای بدون مهاجرت. |
--force | -f | فایلهای موجود را به جای رد کردن، بازنویسی میکند. |
--actions | اکشنها را برای ماژول تولید میکند. | |
--no-actions | از تولید اکشنها صرفنظر میکند. |
مثال با گزینهها
در اینجا مثالی از نحوه استفاده از این گزینهها برای تولید یک ماژول سفارشیتر آمده است:
bash
php artisan make:module Product --api --requests --tests --swagger
این دستور یک ماژول Product با یک کنترلر API، درخواستهای فرم، تستهای ویژگی و مستندات Swagger تولید میکند.