こんにちは、サプライヤーログインを使用して製品を追加しようとしました。spree マーケットプレイスに関連する 2 つの gem がインストールされています
gem 'spree_drop_ship', github: 'spree-contrib/spree_drop_ship', branch: '3-0-stable'
gem 'spree_marketplace', github: 'firman/spree_marketplace'
また、能力デコレーターを更新して、関連する権限を提供するようにしました
if user.has_spree_role? "supplier"
can [:admin, :manage, :index, :create, :update], Spree::Product do |product|
product.supplier_ids.include?(user.supplier_id)
end
end
製品を追加するためのフォームは表示されますが、基本的な製品の詳細を追加して [作成] をクリックすると、Authorization Failure
エラーが表示されます。問題を解決するにはどうすればよいかを提案してください。
更新: アプリをデバッグしたところ、いくつかの移行ファイルが欠落していることがわかりました。db を移行すると、spree_products に supply_id 列が表示されましたが、サプライヤー ログインを使用して新しい製品を追加すると、同じエラーが無許可としてスローされていました。確認しました。データベースでは、supplier_id 列はNULL
.
正しいサプライヤー ID が spree_products に保存されるようにするには、どこを変更すればよいですか?