I saw discourse db table schema only has several foreign keys, is there any reason to not use the foreign keys in most tables?
مرحباً،
جئت إلى المنتدى لطرح نفس السؤال بالضبط بعد الاطلاع على الجداول.
في معرفتي المحدودة، ربما تم التعامل مع القيود على مستوى ريلز باستخدام النماذج. لكنني أود معرفة المزيد في هذا الصدد.
نحن نفكر في هذه المشكلة ولم نصل بعد إلى قرار حاسم.
يرغب البعض منا في تعريف جميع المفاتيح الخارجية في PG، ويعتقدون أن الفوائد تفوق المخاطر بكثير. بينما يشعر آخرون بأن إجراء تغيير جذري كهذا الآن قد يكون محفوفًا بالمخاطر.
تُدخل المفاتيح الخارجية قيودًا على قاعدة البيانات؛ فمثلًا، إذا كان لدى جدول category_users قيد ينص على أن category_id يجب أن يكون id صالحًا في جدول categories، فستكون علينا في كل مرة نُدخل فيها بيانات إلى category_users التحقق من ذلك، مما يضيف بعض التكلفة، خاصة مع وجود عدد كبير جدًا من التبعيات الجارية.
على أي حال.. هذه مشكلة ندركها.
