Avatar ·

كيفية جعل JSON Marshal في Go يخرج المفاتيح بحروف صغيرة؟

```html الترجمة من الروسية إلى العربية مرحبا بالجميع! أنا أكتب أول REST API خاص بي بلغة Go وواجهت مشكلة: عند تسلسل الهيكل إلى JSON عبر `json.Marshal`، تظهر جميع الحقول بأحرف كبيرة لأن الحقول المُصدرة في Go تبدأ بحرف كبير. على سبيل المثال: ```go type User struct { Name string Email string Age int } func main() { u := User{"Иван", "ivan@example.com", 30} data, _ := json.Marshal(u) fmt.Println(string(data)) // الإخراج: {"Name":"Иван","Email":"ivan@example.com","Age":30} } ``` لكن في الواجهة الأمامية (React) الجميع يتوقعون المفاتيح بصيغة camelCase أو snake_case: `name`، `email`، `age`. جربت كتابة marshal خاص بي، لكن هذا مرهق جداً لمشروع يحتوي على 20+ هيكلاً. قرأت عن وسم `json:"name"`، لكن كتابتها يدوياً لكل حقل — هذا جحيم، خاصة إذا كان هناك العديد من الحقول. هل هناك طريقة لتحويل جميع المفاتيح تلقائياً إلى أحرف صغيرة؟ أو على الأقل كيف يمكن استخدام الوسم بشكل صحيح حتى لا أصاب بالجنون؟ أرشدوني، من فضلكم. ```