author
ブログ主ぴきまる

【Rails】refileでのエラー解消(wrong number of arguments)

pageBlogImg

この記事の目的

  • 現在学習中のRailsについての理解とアウトプット、振り返り用
  • Railsのrefileで起きたエラーの解消について

バージョン

ruby 3.2.0
Rails 7.0.4.3

起きたエラーについて

Railsのrefileを使用して画像投稿機能を作成している際に下記のエラーが発生しました

wrong number of arguments (given 3, expected 2; required keyword: object)


原因

バージョンの違いみたいです

解消方法

  • ①バージョンを変更する
  •  attachment_fieldfile_fieldに変更

①バージョンを変更する

バージョンを変更する方法については、Ruby on Railsのrefileでwrong number of argumentsが発生したときの対処という記事がありましたのでそちらを参考にしてみて下さい

 attachment_fieldfile_fieldに変更

こちらについては記載通りattachment_fieldfile_field`に変更することでエラーを解消できました

edit.html.erb<div class="field">
    <%= f.label :profile_image, "プロフィール画像", class: "label has-text-warning" %>
    <%# <%= f.attachment_field :profile_image, class: "input" %> %>
    <%#  上記をしたの下記の記載に変更する %>
    <%= f.file_field :profile_image, class: "input"  %>
</div>

Railsドキュメント(file_field)はこちらから
こちらの変更をすることで下記のように表示できました!

参考

【プログラミング入門】Ruby on Rails でウェブアプリを作ってみよう ~ PART 2(実装①)
Railsドキュメント(file_field)

Related