環境
Rails5.2
内容
単純なところで引っかかっております。
このような名前のモデルを作成しました。
models/sisetu_kanribu_teisyutu_1.rb
モデルのファイルの中にimport1というメソッドを作成しました。
class SisetuKanribuTeisyutu1 < ApplicationRecord def self.import1 end end
コントローラーの中から、次のように、モデルの中のメソッドを読み込みました。
SisetuKanribuTeisyutu1.import1
すると、モデルのクラスがありませんというエラーが表示されます。
NameError in Con37NyushiExcelsController#import1 uninitialized constant Con37NyushiExcelsController::SisetuKanribuTeisyutu1
原因について、アドバイスをお願いします。
コントローラーの中身になります。
class Con37NyushiExcelsController < ApplicationController def import1 SisetuKanribuTeisyutu1.import1(params[:file]) redirect_to sisetu_kanribu_teisyutu_1s_url, notice: "〇〇を追加しました" end end
ビューの中身です。
CSVファイルを選択するダイヤログ画面を表示して、CSVファイルを選択して、インポート1ボタンを押すと、CSVファイルをテーブルに更新するようにしたいと思っています。
= form_tag import1_con37_nyushi_excels_path, multipart: true, class: 'mb-3' do = file_field_tag :file = submit_tag "インポート1", class: 'btn btn-primary'
Con37NyushiExcelsControllerの中身ってどんな感じでしょうか?
よろしければ質問を編集して追記して頂けると有難いです
質問に追加しました。
モデルファイルの名前が違うのかもしれないですね
SampleUserモデルであればファイル名はsample_user.rbになります。
pyonkitiさんのsisetu_kanribu_teisyutu_1.rbではなくsesetu_kanribu_teisyutu1.rbかもしれないですね
私の方で、rails g model SisetuKanribuTeisyutu1としたところ作成されたモデルファイルはsisetu_kanribu_teisyutu1.rbでしたので
dikeda さんの指摘の通りです。
rails g model Sisetu_kanribu_teisyutu_1で作成しています。
モデル名は、Sisetu_kanribu_teisyutu_1.rbになっています。
画面コピーを質問に追加しました。
回答1件
あなたの回答
tips
プレビュー
