MarcP
(MarcP)
11 نوفمبر 2020، 4:52ص
1
مرحبًا بالجميع،
لقد أضفت عن طريق الخطأ الوسم أ كمرادف تحت الوسم أ (عن طريق الخطأ، من الهاتف).
يؤدي حذف المرادف إلى ظهور خطأ 500.
يؤدي زر إلغاء الربط إلى ظهور خطأ 422.
يؤدي حذف الوسم إلى ظهور خطأ غير معروف.
قد يكون من المفيد:
يمكنني إعادة تسمية الوسم أ إلى ب، وسيتم تعديل المرادف أيضًا.
لا يغير وجود 0 أو 1 منشور مع الوسم أ من الأخطاء المذكورة أعلاه.
هل يمكن لأحد تكرار هذه المشكلة؟
إعجابَين (2)
simon
11 نوفمبر 2020، 5:47م
2
يبدو أن هذا شيء لا ينبغي السماح بحدوثه. أفترض أنك انتهى بك الأمر إلى شيء مثل هذا:
أقوم باختبار هذا على موقع التطوير المحلي الخاص بي. بعد إنشاء المرادف، يؤدي النقر على زر “إزالة المرادف” إلى ظهور خطأ 422. أما النقر على أيقونة سلة المهملات للمرادف فلا يعطي خطأ 500، بل يقوم بحذف الوسم بالكامل.
أعتقد أنه يجب إضافة حماية لمنع تعيين وسم كمرادف لنفسه.
إعجاب واحد (1)
MarcP
(MarcP)
11 نوفمبر 2020، 5:58م
3
شكرًا لك على التحقق من هذه المشكلة.
حسنًا، هذا يختلف عن تركيبتي. لا أملك حاليًا أي طريقة لحذف الوسم أو المرادف.
simon
11 نوفمبر 2020، 6:00م
4
MarcP:
هذا يختلف عن تثبيتاتي
ما هي إصدار Discourse الذي يعمل عليه موقعك؟
إعجاب واحد (1)
MarcP
(MarcP)
11 نوفمبر 2020، 6:30م
5
لقد قمت للتو بالترقية إلى أحدث إصدار:
السلوك هو نفسه كما في منشوري الأصلي.
إعجاب واحد (1)
يجب أن نخصص هذا الأسبوع القادم @eviltrout ، فإضافة وسم كمرادف لنفسه .. ليس أمراً جيداً.
إعجابَين (2)
techAPJ
(Arpit Jalan)
17 نوفمبر 2020، 1:26ص
9
تم الإصلاح عبر:
committed 01:22AM - 17 Nov 20 UTC
https://meta.discourse.org/t/adding-synonym-to-the-same-tag-gets-stuck/169801/
شكرًا لتقريرك عن هذه المشكلة @MarcP .
4 إعجابات
techAPJ
(Arpit Jalan)
20 نوفمبر 2020، 4:58ص
12
تم فتح هذا الموضوع بناءً على طلب @MarcP . فهو غير قادر على حذف الوسم حتى عبر وحدة التحكم.
cd /var/discourse
./launcher enter app
rails c
tag = Tag.find_by_name("tag_name")
tag.destroy
الكود أعلاه لا يعمل مع Marc بينما يعمل معي. هل يمكنك توضيح مشكلتك هنا يا Marc؟
3 إعجابات
MarcP
(MarcP)
20 نوفمبر 2020، 8:41م
13
الأمر الذي أرسله لي @techAPJ لم ينجح معي، ومع ذلك قمت بتشغيل الأوامر (المختلفة قليلاً) الموجودة في: How can I delete a tag in development database (on local)? - #4 by simon
حصلت على النتائج التالية عند محاولة حذف الوسم الخاص بي “testing” الذي يحتوي على وسم مرادف: “testing”.
[1] pry(main)> t = Tag.find_by_name('testing')
=> #<Tag:0x000055a268f6f990
id: 35,
name: "testing",
topic_count: 0,
created_at: Wed, 11 Nov 2020 04:38:06 UTC +00:00,
updated_at: Thu, 19 Nov 2020 03:44:35 UTC +00:00,
pm_topic_count: 0,
target_tag_id: 35>
[2] pry(main)> t.destroy!
SystemStackError: stack level too deep
from /var/www/discourse/vendor/bundle/ruby/2.6.0/gems/activerecord-6.0.3.3/lib/active_record/reflection.rb:120:in `_reflect_on_association'
[3] pry(main)>
sam
(Sam Saffron)
22 نوفمبر 2020، 11:27م
14
محاولة:
DB.exec("delete from tags where name = 'testing'")
5 إعجابات
MarcP
(MarcP)
23 نوفمبر 2020، 5:51م
15
نجح ذلك! شكرًا لك يا سام أتمنى لك أسبوعًا سعيدًا.
إعجابَين (2)