สร้างการโยกย้าย Laravel จากฐานข้อมูลที่มีอยู่ รวมถึงดัชนีและคีย์ต่างประเทศ!
โปรดทราบว่าการแก้ไข Laravel 4 Generator ได้ถูกย้ายไปที่ https://github.com/xethron/Laravel-4-Generators.git
เพื่ออัปเดตความเข้ากันได้
วิธีที่แนะนำในการติดตั้งคือผ่านผู้แต่ง:
composer require --dev " xethron/migrations-generator "
ใน Laravel 5.5 ผู้ให้บริการจะได้รับการลงทะเบียนโดยอัตโนมัติ
ในเฟรมเวิร์กเวอร์ชันเก่า ให้แก้ไข config/app.php
และเพิ่มในส่วนผู้ให้บริการ:
Way Generators GeneratorsServiceProvider::class,
Xethron MigrationsGenerator MigrationsGeneratorServiceProvider::class,
หากคุณต้องการให้ lib นี้สำหรับ dev เท่านั้น คุณสามารถเพิ่มโค้ดต่อไปนี้ลงในไฟล์ app/Providers/AppServiceProvider.php
ของคุณภายในเมธอด register()
:
public function register ()
{
if ( $ this -> app -> environment () !== ' production ' ) {
$ this -> app -> register ( Way Generators GeneratorsServiceProvider::class);
$ this -> app -> register ( Xethron MigrationsGenerator MigrationsGeneratorServiceProvider::class);
}
// ...
}
หมายเหตุ:
feature/laravel-five-stable
ถูกแยกจาก way/generators
3.0.3
และทำให้ Laravel 5.0
พร้อมแล้ว Jeffrey Way ได้หยุดการสนับสนุน Laravel 5 แล้ว ดังนั้น artisan generate:
คำสั่งอาจไม่รองรับ 5.0
ตรวจสอบคำสั่งของ artisan make:
คำสั่งสำหรับสิ่งทดแทน สนับสนุน Laravel เพื่อขยายการสนับสนุนการสร้าง หรือแก้ไขและส่ง PR ไปที่ jamisonvalenta/feature/laravel-five-stable
รันคำสั่งผู้แต่งต่อไปนี้:
composer require --dev " xethron/migrations-generator:~1.3.0 "
ถัดไป เพิ่มผู้ให้บริการต่อไปนี้:
' WayGeneratorsGeneratorsServiceProvider ' ,
' XethronMigrationsGeneratorMigrationsGeneratorServiceProvider ' ,
และคุณก็พร้อมแล้ว หากต้องการตรวจสอบอีกครั้งว่าใช้งานได้หรือไม่ ให้รัน php artisan
และค้นหาคำสั่ง migrate:generate
หากต้องการสร้างการโยกย้ายจากฐานข้อมูล คุณต้องตั้งค่าฐานข้อมูลใน Config ของ Laravel
เรียกใช้ php artisan migrate:generate
เพื่อสร้างการย้ายสำหรับตารางทั้งหมด หรือคุณสามารถระบุตารางที่คุณต้องการสร้างโดยใช้ php artisan migrate:generate table1,table2,table3,table4,table5
คุณยังสามารถละเว้นตารางด้วย --ignore="table3,table4,table5"
Laravel Migrations Generator จะสร้างตาราง คอลัมน์ และดัชนีทั้งหมดก่อน จากนั้นจึงตั้งค่าข้อจำกัดของคีย์ต่างประเทศทั้งหมด ดังนั้นตรวจสอบให้แน่ใจว่าคุณรวมตารางทั้งหมดที่อยู่ในรายการคีย์ต่างประเทศเพื่อให้ปรากฏเมื่อมีการสร้างคีย์ต่างประเทศ
คุณยังสามารถระบุชื่อการเชื่อมต่อได้หากคุณไม่ได้ใช้การเชื่อมต่อเริ่มต้นกับ --connection="connection_name"
เรียกใช้ php artisan help migrate:generate
เพื่อดูรายการตัวเลือก
ลองอ่านบล็อกโพสต์ของ Chung Tran เพื่อดูคำแนะนำทีละขั้นตอนอย่างรวดเร็ว: สร้างการโยกย้ายจากฐานข้อมูลที่มีอยู่ใน Laravel 4
บันทึกการเปลี่ยนแปลงสำหรับเครื่องมือสร้างการโยกย้าย Laravel
ขอบคุณ Jeffrey Way สำหรับแพ็คเกจ Laravel-4-Generators ที่น่าทึ่งของเขา แพ็คเกจนี้ขึ้นอยู่กับงานของเขาอย่างมาก
แบร์นฮาร์ด เบรย์เทนบัค (@BBreyten)
Laravel Migrations Generator เป็นซอฟต์แวร์โอเพ่นซอร์สที่ได้รับอนุญาตภายใต้ใบอนุญาต MIT