このバージョンは正式にリリースされていませんが、今日はrc3をチェックしていましたが、シリアライザ内でRailsのURLヘルパーを使用できなくなったことに気付きました。バージョン0.8.xでは、私は以下を行うことができました:ActiveModelSerializer 0.10.0のUrlヘルパーですか?
class BrandSerializer < BaseSerializer
attributes :id, :name, :slug, :state
attributes :_links
def _links
{
self: api_v1_company_brand_path(object.company_id, object.id),
company: api_v1_company_path(object.company_id),
products: api_v1_company_brand_products_path(object.company_id, object.id)
}
end
end
しかしこれは新しいバージョンではありません。シリアライザでリンクを維持できるように、これを解決する最良の方法は何ですか?
編集: 今のところ私は次のことをしていますが、もっと慣れ親しんだ方法があれば聞いてみるのが大好きです。
(あなたが行っていたとして)は除外されていたライブラリが最も確かに(idiomacyの観点から、宝石自体の見直しの外側)の最短ルートになるなど、class BaseSerializer < ActiveModel::Serializer
include Rails.application.routes.url_helpers
私はあなたがそれに最もよく答えたと思います –