العودة لقائمة المشاريع
حل مشكلة مشروع ب لغة GO
الميزانية
$25.00 - $50.00
التصنيف
برمجة، تطوير المواقع والتطبيقات
صاحب المشروع
Zen Eddin A.
المهارات المطلوبة
تصحيح برمجي
حل المشكلات
استكشاف الأخطاء وإصلاحها
هندسة البرمجيات
تطوير البرمجيات
مونجو دي بي
تصحيح برمجي
حل المشكلات
استكشاف الأخطاء وإصلاحها
هندسة البرمجيات
تطوير البرمجيات
مونجو دي بي
الوصف
أنا أعمل على مشروع Social Media backend باستخدام Go + Gin + MongoDB.
عندي نظام Comment + Notification، لكن عندي مشكلة في TargetType (post / reel / comment).
Models:
type TargetType string
const (
Post TargetType = "post"
Reel TargetType = "reel"
Comment TargetType = "comment"
)
Comment model:
type CommentModel struct {
IDprimitive.ObjectID `bson:"_id,omitempty"`
UserIDprimitive.ObjectID `bson:"userId"`
TargetIDprimitive.ObjectID `bson:"targetId"`
TargetTypeTargetType`bson:"targetType"`
Textstring`bson:"text"`
ParentCommentId *primitive.ObjectID `bson:"parentCommentId,omitempty"`
}
المشكلة
عند إنشاء تعليق أو استدعاء:
getTargetOwner()
أحصل على خطأ:
post not found
أو:
invalid target type
أو أحيانًا لا يتم إنشاء notification رغم أن التعليق يتم حفظه في MongoDB.
مثال MongoDB document (Post):
{
"_id": ObjectId("69df5329d0504512468f6c65"),
"content": "content post",
"userId": ObjectId("69df348c78bfa40f070ac1a1"),
"createdAt": "...",
"updatedAt": "..."
}
ما أعتقده سبب المشكلة
TargetType أحيانًا لا يتم تمريره بشكل صحيح من JSON (string vs custom type)
احتمال mismatch بين:
"post" في request
و enum في Go
أو أن switch targetType لا يطابق القيمة فعليًا
أو Mongo query _id لا يطابق ObjectID الحقيقي
مثال request:
{
"targetId": "69df5329d0504512468f6c65",
"targetType": "post",
"text": "hello"
}
المطلوب
أحتاج مساعدة في:
لماذا getTargetOwner لا يجد post رغم أن _id موجود في MongoDB؟
هل مشكلة في TargetType parsing من JSON؟
هل هناك أفضل طريقة لإدارة polymorphic targets (post/reel/comment) في Go؟
لماذا notification sometimes not created؟
ميزانية 30 دولار