اذهب إلى المحتوى
  • 0

ما الفرق بين عبارات الاستيراد settings و django.conf.settings في تطبيق جانغو Django؟

Mohssen A Mohssen

السؤال

إذا أردت الحصول على قيم بعض الإعدادات الموجودة في جانغو أستخدم أحيانًا الكود التالي:

import settings

وفي بعض الأحيان نستخدم الكود التالي:

from django.conf import settings

لكن ما الفرق بينهما؟ ومتى أستخدم كلًا منهما؟

تم التعديل في بواسطة Mohssen A Mohssen
رابط هذا التعليق
شارك على الشبكات الإجتماعية

Recommended Posts

  • 1
import settings

سيقوم باستيراد أول ملف بايثون باسم settings.py موجود في المسار sys.path. عادةً يكون هذا الملف هو ملف الإعدادات الخاص بمشروع Django. وهذا الملف يحِلُّ محل ملف الإعدادات الإفتراضية الخاص ب Django والموجود في django.conf.global_settings.

أما بالنسبة ل:

from django.conf import settings

هو ليسَ ملفاً وإنما كائن تابع للنموذج  LazySettings كما هو موضح في شفرة المصدر الخاص بجانغو

settings = LazySettings()

هذا الكائن يقوم بجمع كل الإعدادات سواءًا الافتراضية (الخاصة بجانغو) أو الخاصة بالمشروع وعمل ملخص منها. هذا الملخص يكون أَعَم وأَشمل من  الإستيراد الأول.

تُستخدم الطريقة الثانية أيضا في حالة ما إذا كنا نملك ملفين للإعدادات. الملف الأول مثلا ملف إعدادات التطوير settings_dev.py والملف الثاني ملف إعدادات الإنتاج settings_prod.py فهو يقوم باستيراد إعدادات الملف الذي نقوم بتنفيذ المشروع به.

رابط هذا التعليق
شارك على الشبكات الإجتماعية

انضم إلى النقاش

يمكنك أن تنشر الآن وتسجل لاحقًا. إذا كان لديك حساب، فسجل الدخول الآن لتنشر باسم حسابك.

زائر
أجب على هذا السؤال...

×   لقد أضفت محتوى بخط أو تنسيق مختلف.   Restore formatting

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   جرى استعادة المحتوى السابق..   امسح المحرر

×   You cannot paste images directly. Upload or insert images from URL.

  • إعلانات

  • تابعنا على



×
×
  • أضف...