スリ飯屋MaLankaのフリーエンジニアな日々

このブログでは、フリーランス6期目となる自身の実体験から、フリーランスエンジニアになるためのノウハウ、ブログや沖縄移住、スリランカの最新情報について発信します。

【Active Admin】Unable to find input class JsonInput

※提携先の広告(リンク、バナー等)を含む場合があります


【Active Admin】Unable to find input class JsonInput


こんにちは、現役沖縄フリーランスエンジニアのmah(MaLanka)です。


このブログでは、

僕がIT未経験から約1年でフリーランスエンジニアになるまでの過程、

ノウハウなどを書いていきます。


今回は、


  • 【Active Admin】Unable to find input class JsonInput


について書いていきます。




【Active Admin】Unable to find input class JsonInput





エラー内容


json型のDBカラムを、

active_adminの管理画面フォームで表示させようとすると、

Unable to find input class JsonInput のエラー。


  • backtraceの一部
@input_class_finder.find(as)
      rescue Formtastic::InputClassFinder::NotFoundError
        raise Formtastic::UnknownInputError, "Unable to find input #{$!.message}"
      end

      # @api private




解決方法


Formtasticのクラスを継承した、

XxxxInputというクラスを作れば良い。


今回の場合は、

エラー文の通り、(Unable to find input class JsonInput)

JsonInputというクラスを作ればOK。


# app/inputs/json_input.rb
class JsonInput < Formtastic::Inputs::StringInput; end




その後、

サーバーを再起動してエラーは出なくなりました。




参考

https://github.com/activeadmin/activeadmin/issues/4178

https://qiita.com/hirokik-0076/items/7dacbb76b1d0b84ec75a




RailsやRubyを学びたい人へ


RailsやRubyを学びたい人は、

RailsHack(レイルズハック)という、

最近できた新しいプログラミングスクール(今なら通常価格69,800円が、早期割で29,800円!)か、

Udemy で下記のコースを受講すると良いです★


✅1. フルスタックエンジニアが教える 即戦力Railsエンジニア養成講座

✅2. 【はむ式】ハンズオンで学ぶRuby on Rails 6【Dockerにも触れられる】 <- おすすめ。ハムさんはReactやTypeScriptの教材も非常に丁寧。

✅3. はじめてのRuby on Rails入門-RubyとRailsを基礎から学びWebアプリケーションをネットに公開しよう




また、

Udemy は定期的にセールをやっていますし(90%OFFとかもザラ)、

「30日間なら返金できる」ので、

満足できなかった時でも安心です。



【公式】RailsHack(レイルズハック)

【公式】Udemyで学んでみる