Find_or_create_by_facebook_id غير موجود
-
20-09-2019 - |
سؤال
أحاول معرفة من أين تأتي هذه الوظيفة. أي شخص لديه أي فكرة؟ يستخدمه هذا:
http://github.com/fluidtickets/facebooker-authlogic-bridge
مع مثال عمل هنا:
http://facebooker-authlogic-bridge.heroku.com
تنزيل الكود ، يرمي: undefined method 'find_or_create_by_facebook_id' for #<Class:0xb04dd1c>
ليس لدي أدنى فكرة من أين تأتي هذه الوظيفة.
شكرا لكم جميعا!
المحلول
يقوم ActivereCord بإنشاء مكتشفات ديناميكية بناءً على أعمدة في قاعدة البيانات الخاصة بك. لذلك على سبيل المثال ، إذا كان لديك مستخدم يحتوي على سمة اسم المستخدم ، فإن ActivereCord يخلق عددًا من الباحثين الديناميكيين:
find_by_username
find_or_initialize_by_username #=> calls new if not found
find_or_create_by_username #=> calls create if not found
يمكنك ربط بعض السمات معًا مثل
find_by_username_and_email
للعودة إلى مشكلتك - أظن أنك لم تقم بتشغيل بعض الترحيل المطلوب الذي يضيف Facebook_ID إلى جدول المستخدمين في DB وبالتالي لا يضيف ActivereCord الباحث الديناميكي إلى Facebook_ID إلى الفصل.