سؤال

وأريد أن تنفيذ نظام الرسائل لبلدي التطبيق.

ولدي المستخدمين.

وماذا بالضبط علي أن أفعل؟ إنشاء نموذج الرسائل مع مفتاحين الخارجية المستعمل الخارجية ؟؟ .. ما يمكن أن يكون أكثر الطرق approproate من الحصول على ذلك؟

وقلقي هو أنه إذا كنت الاستعلام "message.user" أنا متعود معرفة ما إذا كان معرف يكون الحصول على مرسل المتلقي للرسالة

هل كانت مفيدة؟

المحلول

استخدم مفتاحين الخارجية منفصلة مع العلاقات belongs_to اسمه approprately التمييز بين المرسلين والاستقبال.

وبالنظر إلى نموذج رسالة مع مفاتيح sender_id الأجنبية وreceiver_id يمكنك القيام به:

class Message < ActiveRecord::Base
  belongs_to :sender, :class_name => "User", :foreign_key => "sender_id"
  belongs_to :receiver, :class_name => "User", :foreign_key => "receiver_id"
end

والآن عليك أن تكون قادرا على الرجوع مرسل رسالة باستخدام message.sender والاستقبال باستخدام message.receiver.

مرخصة بموجب: CC-BY-SA مع الإسناد
لا تنتمي إلى StackOverflow
scroll top