0

私のAPI in Rails with AMS(JSON:API)は、シリアライザからダッシュ(artemis-forum-disputes)の型名を返しますが、Emberを使用するフロントエンドアプリ内で、サブディレクトリ構造(artemis/forum/disputes)でモデルを保存します。ダッシュ付きのシリアライズ型をモデルスラッシュ構造に変換するにはどうすればいいですか?

WARNING: Encountered a resource object with type "artemis-forum-disputes", but no model was found for model name "artemis-forum-dispute" (resolved model name using '[email protected]:application:.modelNameFromPayloadKey("artemis-forum-disputes")'). 

どのように解決しますか?ありがとう。

答えて

1

あなたのシリアライザでmodelNameFromPayloadTypeメソッドをオーバーライドすることによってEmber Dataにどのモデルを使用するかを伝えることができます。アプリケーションシリアライザでそのメソッドをオーバーライドしてダッシュをスラッシュに変換すると、Emberはサブディレクトリでモデルを見つけることができます。

// app/serializers/application.js 
// or app/application/serializer.js 
import DS from 'ember-data' 
export default DS.JSONAPISerializer.extend({ 
    modelNameFromPayloadType(payloadType) { 
    return payloadType.replace(/-/g, '/'); 
    } 
}); 
関連する問題