JSONAPI-Resources / JSONAPI-Resources/jsonapi-resources

Namespaced resources don't infer namespaced model_name

Aperta
#1,152 0 commenti 0 reazioni 0 assegnatari Vedi su GitHub

Nessuno ha ancora preso questa issue.

Lingua principale
Ruby
Stelle
2.3k
Fork
546
Metriche di merge delle PR
Nessuna PR unita negli ultimi 30g

Descrizione

I don't know if this is by design or a bug, but given the follwing model and resource, the resource cannot infer the model name because of demodulize in https://github.com/cerebris/jsonapi-resources/blob/5af1f17068b66b0a17b7b69e5db334c640f6f34b/lib/jsonapi/resource.rb#L925

# model
module Foo
  class Bar < ApplicationRecord
  end
end

# resource
module Foo
  class BarResource < JSONAPI::Resource
    # model_name Foo::Bar' <= with this, things work fine, without, you'll get a warn "[MODEL NOT FOUND] warning
  end
end

If the resource is defined inside a module, should't we prefix the model_name with the same module by default to permit model_name inferring ?

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.

Direzione di ricerca

Inizia in lib/jsonapi/resource.rb intorno alla riga 925 e riproduci l’esempio di Foo::Bar e Foo::BarResource dall’issue. Il lavoro è completo quando una risorsa definita all’interno di un modulo deduce il modello namespaced corrispondente senza un model_name esplicito e non viene emesso alcun avviso MODEL NOT FOUND.

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

Valutazione

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

Ricevi le nuove issue nella tua casella

Un breve riepilogo di issue GitHub adatte ai principianti.