この記事の目的
- 現在学習中の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_field
→file_field
に変更
①バージョンを変更する
バージョンを変更する方法については、Ruby on Railsのrefileでwrong number of argumentsが発生したときの対処という記事がありましたのでそちらを参考にしてみて下さい
② attachment_field
→file_field
に変更
こちらについては記載通りattachment_field→
file_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)