Ruby on Railsにおいて、

A class was passed to `:class_name` but we are expecting a string

というエラーが出た時の解決方法です。

原因と対策

Ruby on Rails 5.2より、class_nameのアトリビュートに指定する値は文字列では無いといけないという制限が加わり、下記のような記法が使えなくなりましたので、古いRailsバージョンの記法で書かれているためと考えられます。

belongs_to :foo, class_name: Bar

正しくは、次のようになります。

belongs_to :foo, class_name: 'Bar'
RubyRuby on rails