عبد الواحد الحدادي نشر 24 يناير 2021 أرسل تقرير نشر 24 يناير 2021 مرحبا بكم إخواني وأخواتي؛ لدي سؤال هل عملية البذر Sedeers ضرورية في كل مشروع لارافيل نقوم بهِ ؟ هل عملية اختيارية أم ضرورية نقوم بها ؟ | تحياتي لكم . اقتباس
0 Sam Ahw نشر 24 يناير 2021 أرسل تقرير نشر 24 يناير 2021 بتاريخ 8 دقائق مضت قال عبد الواحد الحدادي: لدي سؤال هل عملية البذر Sedeers ضرورية في كل مشروع لارافيل نقوم بهِ ؟ هل عملية اختيارية أم ضرورية نقوم بها ؟ مرحباً عبدالواحد، إن عملية بذر قواعد البيانات هي ليست إلزامية، فهي مقدمة من لارافيل كغيرها من الإضافات فقط لتسهل العمل على المبرمج بملء قاعدة البيانات ببيانات تجريبية. لمزيد من المعلومات يمكنك الإطلاع على الرابط بذر قواعد البيانات بالبيانات الاختبارية Seeding في Laravel بالتوفيق، 1 اقتباس
0 Abdulhamid Hamsho2 نشر 24 يناير 2021 أرسل تقرير نشر 24 يناير 2021 أهلًا @عبد الواحد الحدادي، إن عملية البذر seeders يتم من خلالها بذر جداول قواعد البيانات التي قمت بإنشأها في إطار العمل Laravel، ومن خلال هذه الطريقة أنت لاتحتاج في كل عملية إنشاء جدول جديد أو قواعد بيانات جديدة إلى فتح ملفات قواعد البيانات والتعديل عليها، كل ماعليك هو التعديل على الملفات الخاصة بالبذر لديك في إطار العمل لاريفيل ومن ثم بذر هذه الملفات داخل قواعد البيانات. فهذه العملية تختضر على المبرمج الكثير من الوقت في إنشاء جداول قواعد البيانات، كما يمكنك من خلالها فتح المشروع الذي قمت به على جهاز حاسوب أخر فقط من خلال بذر ملف قواعد البيانات الخاص بمشروعك على الحاسوب الأخر، وبهذا يمكنك بسهولة مشاركة مشروعك مع الكثير من المطورين ولن يجيدوا صعوبة في فتح مشروعك. ولهذا يعتبر البذر خاصية مهمة جدًا في إطار العمل لاريفيل، ومن الميزات التي لايمكن الإستغناء عنها. شكرًأ لك. 1 اقتباس
0 سمير عبود نشر 24 يناير 2021 أرسل تقرير نشر 24 يناير 2021 مرحباً عبد الواحد، إن مفهوم الseeders جاء ليُكمل مفهومي الmigrations و الfactories فملفات التهجير تُساعدنا في إنشاء الهيكلية العامة لجداول قاعدة البيانات بما فيها من حقول هذه الجداول و تعيين أنواع البيانات لهذه الحقول ، القيم الإفتراضية لها، تحديد القيود لهذه الأعمدة، إضافة أعمدة جديدة لجدول مُحدد، ربط الجداول بمفاتيح ثانوية و ما إلى ذلك من خصائص ضمن قواعد البيانات تم توفيرها للإستخدام ضمن ملفات التهجير، تتجلى فائدة مفهوم التهجير بشكل كبير إذا كنت تعمل ضمن فريق من المُطورين، لنفترض أن المفهوم غير موجود و بالتالي سيكون على كل شخص رفع نُسخة من قاعدة البيانات التي يعمل عليها، و سيتكفل بشرح الأشياء التي أضافها و سيتوجب على بقية أعضاء الفريق فهم الأشياء المُضافة و سيضيع وقت كثير في هذا الأمر ، الشيء الذي جعل المُطورين يقومون بإنشاء مفهوم مُتعارف عليه بينهم يُسهل عملية التعامل مع جداول قاعدة البيانات من خلال ملفات و كلاسات و أسطر برمجية غير مُعقدة، بالإضافة إلى الأوامر المتعددة من خلال واجهة artisan، الآن بوجود هذا المفهوم لن يضطر أي شخص شرح أو توضيح الأشياء المُضافة، بل سيتعين على الأشخاص العاملين على المشروع قراءة ملفات التهجير و سيفهمون بكل سهولة، و بإعتمادهم على الأوامر المتاحة سيتمكنون من بناء و هدم جداول قاعدة البيانات بكل سهولة . حتى و إن كان المُطور يعمل لوحده سيحتاج لإستخدام ملفات التهجير و ستُساعده في إنشاء قاعدة بيانات المشروع في وقت قصير ، فلتُجرب عدم إستخدامها في مشروع و لتقم مثلا بإنشاء قاعدة البيانات بإستخدام أوامر sql او واجهة برنامج مثل phpmyadmin ستستغرق وقت و سيصعب عليك الأمر خصوصاً إذا لم تكن لديك خلفية و معرفة بكيفية التعامل مع قواعد البيانات، لنقل على سبيل المثال أنه واجهتك مُشكلة برمجية و أردت من شخص ما أن يُساعدك فسيجد هو أيضاً صعوبة في الوصول إلى المُشكلة قبل حلها. أما مفهوم الfactories فتٌعتبر مصانع لإنشاء سجلات او كائنات من نموذج مُحدد مثلاً نموذج المُستخدم سيكون له مصنع لإنشاء مُستخدمين، نموذج المقالات سيكون له مصنع لإنشاء المقالات وهكذا، أما مفهوم الseeders فهي تُساعدنا في إنشاء بيانات إختبارية، لنختبر مميزات الموقع و خصائصه و تُساعدنا و تُسهل علينا هذه العملية و تعمل بإستخدام الfactories . بتاريخ 2 ساعات قال عبد الواحد الحدادي: لدي سؤال هل عملية البذر Sedeers ضرورية في كل مشروع لارافيل نقوم بهِ ؟ هل عملية اختيارية أم ضرورية نقوم بها ؟ عملية البذر يُمكن أن نقول أنها ضرورية لإنشاء بيانات إختبارية لتجربة الموقع أثناء مرحلة التطوير، لنقل أنك قمت بتوفير بعض الخصائص في الموقع و تريد أن يقوم شخص ما بتجربة هذه الخصائص سواء كان صديقك أو عميل تقوم بإنجاز المشروع له أو حتى أنت، فكيف ستُجرب هذه الخصائص بدون وجود بيانات في قاعدة البيانات، هل ستقوم بإنشائها يدوياً ، لا تنسى أن بعض الجداول مُرتبطة ببعضها البعض فعند إنشائك لسجل مُستخدم مثلاً عليك إنشاء سجل profile و تربط بينهما و هذا الأمر صعب و يأخذ وقت إن كانت العملية يدوياً بعكس إستخدام الseeders. برأيي أن بذر بيانات تجريبية لا يُمكن الإستغناء عنه في مرحلة التطوير ، أما الطريقة فلك حرية الإختيار سواء كانت التي تُكلفك عناء و جهد إضافي (الطريقة اليدوية) أو الطريقة التي تُساعدك (وهي إستخدام الseeders) حتى عند إستخدامك للإختبارات بشتى أنواعها كالأحادية (unit tests) و غيرها تحتاج إلى بيانات تجريبية بالتوفيق. 1 اقتباس
0 Ali Taha2 نشر 25 يناير 2021 أرسل تقرير نشر 25 يناير 2021 (معدل) عملية الزرع اختيارية وهي .. لتسهيل العمل ففي حال كنت تعمل مع أكثر من شخص , لابد من وجود بيانات أساسية للتعامل معها داخل قاعدة البيانات .. وعند تنفيذ المشروع للمرة الأولى .. ستضر لإدخال بيانات قد تكون عشوائية .. لذا هذه الخاصية هاهنا لتوفير الوقت والجهد عند تنفيذ المشروع لأول مرة , وخاصةً إن كان المشروع قابل للمشاركة .. يتضمن إطار العمل Laravel القدرة على زرع بياناتك داخل قاعدة البيانات .. مع العلم أنَّ حماية التخصيص للحقول تتعطل بشكل تلقائي عند زَرع قاعدة البيانات . تم التعديل في 25 يناير 2021 بواسطة Ali Taha2 1 اقتباس
السؤال
عبد الواحد الحدادي
مرحبا بكم إخواني وأخواتي؛
| تحياتي لكم .
4 أجوبة على هذا السؤال
Recommended Posts
انضم إلى النقاش
يمكنك أن تنشر الآن وتسجل لاحقًا. إذا كان لديك حساب، فسجل الدخول الآن لتنشر باسم حسابك.