فرعوني
جاري التحميل...

الشروع في العمل

Settings

# لماذا Settings؟

Settings تساعد في حفظ واسترجاع الاعدادات والبيانات بشكل عام أو لـ Model بشكل خاص في Laravel.

# التنصيب

قم بتنصيب اخر اصدار بواسطة Composer.

1composer require pharaonic/laravel-settings
2php artisan migrate

# عام

استخدام دالة settings لحفظ واسترجاع الإعدادات العامة.

#عام Set

هكذا يمكنك حفظ الإعدادات العامة, ويوجد 3 طرق يمكنك اختيار ما يناسبك.

1// Way 1
2settings()->status = false;
3 
4// Way 2
5settings()->set('off_message', 'Maintenance');
6 
7// Way 3
8settings()->set([
9 'status' => true,
10 'off_message' => 'Maintenance'
11]);
12 
13// Save all settings
14settings()->save();

#عام Get

هكذا يمكنك إسترجاع الإعدادات العامة, ويوجد 3 طرق يمكنك اختيار ما يناسبك.

1// Way 1
2// Returns string|null
3settings()->status;
4 
5// Way 2
6// Returns string|null
7settings()->get('off_message');
8 
9// Way 3
10// Returns Collection
11$data = settings()->get(['status', 'off_message']);
12echo $data->off_message->value;

# Model

استخدام Settingable trait لحفظ إعدادات Model.

# التضمين في Model

يجب عليك تضمين Settingable اولا في model الخاص بك.

1namespace App\Models;
2 
3use Illuminate\Foundation\Auth\User as Authenticatable;
4use Pharaonic\Laravel\Settings\Traits\Settingable;
5 
6class User extends Authenticatable
7{
8 use Settingable;
9}

# Model Set

هكذا يمكنك حفظ إعدادات Model, ويوجد 3 طرق يمكنك اختيار ما يناسبك.

1// Way 1
2$user->settings->multilingual = true;
3 
4// Way 2
5$user->settings->set('notifiable', true);
6 
7// Way 3
8$user->settings->set([
9 'multilingual' => true,
10 'notifiable' => true,
11]);
12 
13// Save all settings
14$user->settings->save();

# Model Get

هكذا يمكنك إسترجاع إعدادات Model, ويوجد 3 طرق يمكنك اختيار ما يناسبك.

1// Way 1
2// Returns string|null
3$user->settings->notifiable;
4 
5// Way 2
6// Returns string|null
7$user->settings->get('multilingual');
8 
9// Way 3
10// Returns Collection
11$data = $user->settings->get(['multilingual', 'notifiable']);
12echo $data->multilingual->value;