روبي على القضبان لديها الكثير من خلال مشكلة الصفيف

StackOverflow https://stackoverflow.com/questions/1452920

سؤال

أواجه مشاكل في إضافة إلى لديه الكثير من خلال جمعية باستخدام user_ids.

نموذج الاتصال الخاص بي يشبه هذا:

class communication
 has_many :recipients
 has_many :users, :through => :recipients
end

في الإجراء الخاص بي لإجراء وحدة تحكم الاتصالات، أحاول إضافة يدويا user_ids إلى كائن الاتصالات مثل ذلك:

@communication = new Communications(params[:communication])
@communication.user_ids << id
logger.debug @communication.user_ids # is empty

لا أستطيع العمل لماذا @communication.user_ids مجموعة فارغة، حتى عندما أقوم بمعرف مشفرة بجد مثل ذلك:

@communication = new Communications(params[:communication])
@communication.user_ids << 1
logger.debug @communication.user_ids # is still empty!

ما زلت أحصل على فارغة @communication.user_ids مجموعة مصفوفة.

هل أفتقد شيئا مع طريقتي؟ أي نصائح للحصول على هذا العمل؟

شكرا مقدما!

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

المحلول

لأنها has_many :through, ربما تحتاج إلى توفير الكائنات الكاملة بحيث يمكن إنشاء العلاقة بسلاسة. جرب هذا:

@communication = Communication.new params[:communication]
@communication.users << User.find( 1 )
@communication.user_ids  # should be [ 1 ]
مرخصة بموجب: CC-BY-SA مع الإسناد
لا تنتمي إلى StackOverflow
scroll top