انواع فیلد در AbarORM¶
در AbarORM، فیلدها نوع دادههای ذخیره شده در مدلهای پایگاه داده شما را تعریف میکنند. هر نوع فیلد نمایانگر یک نوع خاص از داده است و گزینههایی برای اعتبارسنجی و محدودیتها فراهم میکند. در این راهنما انواع فیلدهای موجود و نحوه استفاده از آنها را بررسی میکنیم.
انواع فیلدهای پایه¶
1. CharField¶
- توضیح: نمایانگر یک فیلد متنی با طول حداکثر مشخص است.
- پارامترها:
max_length
: حداکثر تعداد کاراکترهای مجاز.unique
: اگر مقدار آنTrue
باشد، فیلد باید مقادیر یکتایی در سراسر جدول داشته باشد.null
: اگر مقدار آنTrue
باشد، فیلد میتواند شامل مقادیرNULL
باشد.default
: مقدار پیشفرض در صورت عدم ارائه مقدار.- مثال:
2. DateTimeField¶
- توضیح: نمایانگر یک مقدار تاریخ و زمان است.
-
پارامترها:
auto_now
: اگر مقدار آنTrue
باشد، فیلد به طور خودکار به تاریخ و زمان جاری هنگام بروزرسانی رکورد تنظیم خواهد شد.auto_now_add
: اگر مقدار آنTrue
باشد، فیلد به طور خودکار به تاریخ و زمان جاری هنگام ایجاد رکورد تنظیم خواهد شد.
-
مثال:
3. ForeignKey¶
- توضیح: نمایانگر یک رابطه بسیاری به یک بین مدلها است.
-
پارامترها:
to
: مدل مورد نظر که این فیلد به آن اشاره دارد.on_delete
: رفتار هنگام حذف رکورد مرجع را تعریف میکند. گزینههای رایج شامل:CASCADE
: به طور خودکار رکوردهایی که به رکورد حذفشده ارجاع دارند را حذف میکند.SET NULL
: فیلد را بهNULL
تنظیم میکند وقتی رکورد مرجع حذف میشود.PROTECT
: حذف رکورد مرجع را با ایجاد خطا جلوگیری میکند.SET_DEFAULT
: فیلد را به مقدار پیشفرض تنظیم میکند وقتی رکورد مرجع حذف میشود.DO_NOTHING
: هیچکاری انجام نمیدهد و فیلد بدون تغییر باقی میماند.
-
مثال:
4. BooleanField¶
- توضیح: نمایانگر یک مقدار بولی (
True
یاFalse
) است. -
پارامترها:
default
: مقدار پیشفرض برای فیلد در صورت عدم ارائه مقدار.null
: اگر مقدار آنTrue
باشد، فیلد میتواند شامل مقادیرNULL
باشد.
-
مثال:
5. IntegerField¶
- توضیح: نمایانگر یک مقدار صحیح است.
-
پارامترها:
default
: مقدار پیشفرض برای فیلد در صورت عدم ارائه مقدار.null
: اگر مقدار آنTrue
باشد، فیلد میتواند شامل مقادیرNULL
باشد.
-
مثال:
6. FloatField¶
- توضیح: نمایانگر یک عدد اعشاری است.
-
پارامترها:
default
: مقدار پیشفرض برای فیلد در صورت عدم ارائه مقدار.null
: اگر مقدار آنTrue
باشد، فیلد میتواند شامل مقادیرNULL
باشد.
-
مثال:
7. DecimalField¶
- توضیح: نمایانگر یک عدد اعشاری با دقت و مقیاس ثابت است.
-
پارامترها:
max_digits
: حداکثر تعداد ارقام (شامل ارقام صحیح و اعشاری).decimal_places
: تعداد ارقام اعشاری.default
: مقدار پیشفرض برای فیلد در صورت عدم ارائه مقدار.null
: اگر مقدار آنTrue
باشد، فیلد میتواند شامل مقادیرNULL
باشد.
-
مثال:
8. DateField¶
- توضیح: نمایانگر یک تاریخ است.
-
پارامترها:
default
: مقدار پیشفرض برای فیلد در صورت عدم ارائه مقدار.null
: اگر مقدار آنTrue
باشد، فیلد میتواند شامل مقادیرNULL
باشد.
-
مثال:
9. TimeField¶
- توضیح: نمایانگر یک زمان است.
-
پارامترها:
default
: مقدار پیشفرض برای فیلد در صورت عدم ارائه مقدار.null
: اگر مقدار آنTrue
باشد، فیلد میتواند شامل مقادیرNULL
باشد.
-
مثال:
10. TextField¶
- توضیح: نمایانگر یک فیلد متنی بزرگ است.
- پارامترها:
default
: مقدار پیشفرض برای فیلد در صورت عدم ارائه مقدار.null
: اگر مقدار آنTrue
باشد، فیلد میتواند شامل مقادیرNULL
باشد.
- مثال: