Feras Alfarra نشر 21 أبريل أرسل تقرير نشر 21 أبريل أريد الخطوات اللازمة لإنشاء نظام مستأجرين في لارافل ؟ 2 اقتباس
0 بلال زيادة نشر 21 أبريل أرسل تقرير نشر 21 أبريل يمكنك إنشاء نظام مستأجرين في لارافل بسهولة تامة مع حزمة composer require stancl/tenancy حيث تمكنك هذه الحزمة من إنشاء نظام متكامل لإدارة المستأجرين في لارافل بسهولة تامة حيث توفر لك أكثر من نظام منها، إنشاء يعتمد على حقل فريد في قاعدة البيانات بالنسبة لكل مستأجر باستخدام قاعدة بيانات واحدة أو إنشاء قاعدة بيانات لكل مستأجر حسب النطاق الخاص به مثل إذا كان لديك مستأجر و نطاقه مثلا test.saas-store.com تكون قاعدة البيانات الخاصة بهذا المستأجر حسب /** * Tenant database names are created like this: * prefix + tenant_id + suffix. */ 'prefix' => 'tenant', 'suffix' => '', أي ممكن تكون هكذا tenant_test أو بشكل أخر إذا كان لديك suffix إيضا و بالتالي تمنحك تحكم كاملا في إدارة المستأجرين و قواعد البيانات لهم و يمكنك نشر قاعدة البيانات لجميع المستأجرين من خلال الأمر التالي php artisan tenants:migrate اما بخصوص تثبيت هذه الحزمة فيكون باستخدام الأمر التالي composer require stancl/tenancy ثم الأمر التالي لإنشاء الملفات الازمة لهذه الحزمة php artisan tenancy:install هذا الأمر سينشئ التالي: ملف التهيئة: config/tenancy.php ملفات الهجرة (migrations) لجدولي tenants وdomains ملف مسارات المستأجر: routes/tenant.php مزود الخدمة: app/Providers/TenancyServiceProvider.php اقتباس
0 Mustafa Suleiman نشر 21 أبريل أرسل تقرير نشر 21 أبريل ذلك قائم على مفهوم Multi-tenancy بمعنى هيكلية برمجية تسمح بتشغيل نسخة واحدة من التطبيق لخدمة عدة عملاء مع عزل بيانات كل منهم. من حيث المفهوم الأمر يعتمد على إعداد قاعدة البيانات وهناك طريقتين، الأولى نهج قاعدة البيانات المنفصلة كالتالي: إنشاء قاعدة بيانات مركزية تحتفظ بمعلومات المستأجرين إنشاء قاعدة بيانات منفصلة لكل مستأجر تبديل الاتصال بقاعدة البيانات حسب المستأجر الحالي والثانية نهج الجدول المشترك وهي أسهل بإنشاء جدول مشترك بإضافة عمود tenant_id إلى كل جدول يحتاج إلى عزل البيانات وتطبيق Global Scope لتصفية البيانات تلقائياً حسب المستأجر الحالي. ويوجد مكتبة توفر كلا الطريقتين بالإضافة إلى تسهيل باقي الخطوات وهي Tenancy for Laravel ستجد تفصيل بخصوص طريقة التثبيت في المستند الرسمي. عامًة للتبسيط، ستقوم بتثبيت المكتبة: composer require stancl/tenancy ثم التالي لإنشاء ملفات التهجير والإعدادات: php artisan tenancy:install ثم التهجير: php artisan migrate ثم ضع السطر التالي في ملف bootstrap/providers.php: return [ App\Providers\AppServiceProvider::class, App\Providers\TenancyServiceProvider::class, // <-- هنا ]; ثم قم بإنشاء نموذج في app/Models/Tenant.php: php artisan make:model Tenant ثم: <?php namespace App\Models; use Stancl\Tenancy\Database\Models\Tenant as BaseTenant; use Stancl\Tenancy\Contracts\TenantWithDatabase; use Stancl\Tenancy\Database\Concerns\HasDatabase; use Stancl\Tenancy\Database\Concerns\HasDomains; class Tenant extends BaseTenant implements TenantWithDatabase { use HasDatabase, HasDomains; } ثم في config/tenancy.php ضع النموذج: 'tenant_model' => \App\Models\Tenant::class, ثم في ملف routes/web.php أو api.php يجب إنشاء مسار مركزي: foreach (config('tenancy.central_domains') as $domain) { Route::domain($domain)->group(function () { // ضع المسارات هنا }); } ثم إنشاء دومين مركزي في config/tenancy.php ضع التالي: 'central_domains' => [ 'saas.test', //اكتب اسم الدومين المحلي الخاص ببيئة التطوير ], وستجد باقي الخطوات هنا: https://tenancyforlaravel.com/docs/v3/quickstart اقتباس
السؤال
Feras Alfarra
أريد الخطوات اللازمة لإنشاء نظام مستأجرين في لارافل ؟
2 أجوبة على هذا السؤال
Recommended Posts
انضم إلى النقاش
يمكنك أن تنشر الآن وتسجل لاحقًا. إذا كان لديك حساب، فسجل الدخول الآن لتنشر باسم حسابك.