هل يمكن تغيير فئة قناة الدردشة المرتبطة في وحدة تحكم Rails؟

تحديث:
لقد توصلت إلى حلي وأشاركها هنا لأنها قد تساعد شخصًا ما.

إخلاء مسؤولية:
تحتاج إلى الوصول إلى خادمك ويساعد إذا كنت تفهم ما تفعله. إذا لم يكن الأمر كذلك، أوصي بالحصول على مساعدة من شخص يعرف الخوادم و Ruby on Rails.
كن حذرًا أيضًا: قد يتسبب تغيير البيانات في قاعدة بيانات قيد التشغيل في حدوث مشاكل.

الخطوات:
أولاً، قم بالوصول إلى خادمك. بمجرد وصولك إلى هناك، كن مستخدمًا جذريًا. انتقل إلى حاوية Discourse وادخل إليها:

cd /var/discourse
./launcher enter app

بمجرد الدخول إلى الحاوية، افتح وحدة تحكم Rails:

rails c

الآن في متصفحك، ابحث عن معرف قناة الدردشة (slug). يمكنك العثور عليه داخل عنوان URL، على سبيل المثال، عند فتح قناة الدردشة في وضع ملء الشاشة:
https://my-example-forum.com/chat/c/cat-pictures/17

في وحدة تحكم Rails، احصل على كائن قناة الدردشة الذي تريده واحفظه في متغير:

chat = Chat::Channel.find_by(slug: "cat-pictures")

إذا قمت الآن بكتابة المتغير chat وضغطت على Enter، يمكنك رؤية الكائن وجميع سماته. أحدها هو chatable_id. هناك يمكنك رؤية معرف الفئة التي ترتبط بها قناة الدردشة. يمكن تعيين chatable_id إلى 5 على سبيل المثال.

يمكننا تغيير chatable_id هذا إلى معرف الفئة التي تريد أن تتوافق معها قناة الدردشة. يمكنك العثور على هذا المعرف في عنوان URL للفئة في المتصفح:
https://my-example-forum.com/c/cats/9

الآن بعد أن عرفت معرف الفئة المطلوب، يمكنك تعديل الفئة المرتبطة بقناة الدردشة:

chat.chatable_id=9
chat.save

آمل أن يساعد هذا.


قد يكون هذا ذا صلة أيضًا بـ How change a Chat Channel's category that it's linked to

إعجابَين (2)