Hacktoberfest 2026: le issue che i maintainer hanno segnato per ottobre, aperte e adatte ai principianti. Sfoglia le issue Hacktoberfest

UUIDResource has_many IdResource causes undefined method `[]` when doing GET [...]?includes=

Aperta
#1,156 3 commenti 1 reazione 0 assegnatari Vedi su GitHub

Nessuno ha ancora preso questa issue.

Valutazione

Difficoltà
3/5
Tempo stimato
1-2 giorni
Idoneità per principianti
42/100
Tipo di issue
Bug
Chiarezza
Specificata chiaramente
Stato di attività
Ferma
Stack tecnologico
ruby
Ambito
api, backend

Direzione di ricerca

Inizia da lib/jsonapi/processor.rb:587 e riproduci il fallimento con GET /uuids/3bbaf722-4583-4fa6-ac36-9190d4b93f80?include=ids usando le definizioni di UuidResource e IdResource presenti nell’issue. Traccia come vengono create e consultate le chiavi di resource_set, quindi verifica che la richiesta venga completata senza l’errore di metodo [] non definito e includa gli ids associati.

Scritto dal modello di indicizzazione a partire dal testo della issue.

Descrizione

This issue is a (choose one):

  • Problem/bug report.

Description

I've tracked the issue to lib/jsonapi/processor.rb:587.

resource_set[resource_klass] is holding the associated resources in an array key'd by a string {"1" => [...]} and attempting to access it via an int resource.id.

With the following resources just issue this get request (make sure to have include=).

GET /uuids/3bbaf722-4583-4fa6-ac36-9190d4b93f80?include=ids

class UuidResource < JSONAPI::Resource
  key_type :uuid
  has_many :ids
end

class IdResource < JSONAPI::Resource
  has_one :uuid
end

Throws error:

Internal Server Error: undefined method `[]' for nil:NilClass /var/lib/gems/2.3.0/bundler/gems/jsonapi-resources-d185ebb76cd2/lib/jsonapi/processor.rb:587:in `block (2 levels) in populate_resource_set'
/var/lib/gems/2.3.0/bundler/gems/jsonapi-resources-d185ebb76cd2/lib/jsonapi/processor.rb:586:in `each'
/var/lib/gems/2.3.0/bundler/gems/jsonapi-resources-d185ebb76cd2/lib/jsonapi/processor.rb:586:in `block in populate_resource_set'
/var/lib/gems/2.3.0/bundler/gems/jsonapi-resources-d185ebb76cd2/lib/jsonapi/processor.rb:542:in `each_key'
Lingua principale
Ruby
Stelle
2.3k
Fork
546
Metriche di merge delle PR
Nessuna PR unita negli ultimi 30g

Guida per i contributori

Nessuna guida per i contributori indicizzata per questo repository

Come iniziare

  1. Leggi tutta la issue e poi la guida ai contributi del progetto.
  2. Commenta sulla issue per dire che te ne occupi tu — evita che due persone facciano lo stesso lavoro.
  3. Fai un fork del repository e lavora su un branch.
  4. Apri una pull request che faccia riferimento al numero della issue.

Altre issue di JSONAPI-Resources/jsonapi-resources

Tutte le issue di JSONAPI-Resources/jsonapi-resources

Issue simili

Altre issue su Ruby

Ricevi le nuove issue nella tua casella

Un breve riepilogo di issue GitHub adatte ai principianti.