Proje: Okul.com.tr CRM · Hub: Okul.com.tr CRM — Decisions

Backend API Include Format Kararı

Karar

Backend HasDynamicIncludes trait ile hem includes[] (array) hem include=a,b,c (comma-separated) formatını kabul eder. Her iki format da çalışır.

Mevcut Durum

Frontend servislerde karma kullanım var:

  • AnnouncementService.getWithParams: queryParams.append(key, item.toString())includes[]=creator
  • SchoolService.getById: queryParams.append('include', include.join(','))include=type,college
  • ArticleService.getById: include[]=category&include[]=location (tekil form)

Öneri

Yeni yazılacak servislerde comma-separated format (include=relation1,relation2) tercih edilmeli — daha temiz URL.

Array format da çalışır ama URL daha uzun.

Why: Backend’in HasDynamicIncludes trait’ı her iki formatı da normalize ediyor. Bilinçli bir seçim yapmak önemli, tutarsız karma kullanımdan kaçın.