nullobject/rein
این پروژه به راحتی امکان تعریف محدودیتهای پایگاه داده را در ActiveRecord فراهم میکند. ️
کاربرد:
با استفاده از این کتابخانه، میتوانید محدودیتهایی مثل NOT NULL، UNIQUE، FOREIGN KEY و غیره را به صورت تمیز و خوانا در مایگریشنهای Rails تعریف کنید، بدون نیاز به نوشتن کوئریهای خام SQL.
در چه شرایطی بهتره استفاده شود؟
وقتی در پروژههای Rails قصد دارید امنیت و یکپارچگی دادهها را در سطح پایگاه داده تقویت کنید، اما نمیخواهید مستقیماً با دستورات پیچیده SQL کار کنید. این ابزار کمک میکند مایگریشنها تمیز، قابل خواندن و قابل تست باشند.
چند مثال از موارد استفاده:
اضافه کردن محدودیت NOT NULL به یک فیلد بدون نوشتن SQL
تعریف کلید خارجی با گزینههای ON DELETE CASCADE به صورت خوانا
اعمال محدودیت منحصر به فرد روی ترکیب چند ستون
بازگرداندن محدودیتها در صورت rollback مایگریشن به درستی
- ##DatabaseConstraints
- ##RailsGem
- ##ActiveRecord
- ##DataIntegrity
- ##MigrationMadeEasy
- ##NullObject
- ##Rein
- ##RubyOnRails
- ##CleanCode
- ##SQLConstraints
