コントローラに変数を設定していますが、なんらかの理由で設定されていません。私は2つの方法でそれを試しました。私の見解ではRoR、ビューに変数を渡すとnullオブジェクトが返される
def update
# @available_cars = Car_info.where("user_id = ?", session[:user_id])
@available_cars = Car_info.find_by_user_id(session[:user_id])
end
私はこれを行います。私はするつもり何
<% @available_cars.each do |car| %>
<%= car.name %>
<% end %>
は、ドロップダウンリストに@available_carsを読み込むですが、私もそれらを印刷することができません。私はセッション[:user_id]が設定されていることを知っています。なぜなら、私はそれを印刷して他の場所にアクセスするからです。
私は... 予想されるDこのエラーが出る:6:私のコントローラ アプリ/コントローラ/ active_car_controller.rbにCar_info
を定義する/RailsProjects/mileage/app/models/car_info.rb `での更新 '
ご協力いただければ幸いです。 RoRを初めて使用しました。
この** Car_info.find_by_user_id(セッション[:user_id])**を** Car_info.find_by_user_id!(セッション[:user_id])**に変更し、どのようなエラーが表示されるかを確認してください。また、クラス名にはアンダースコアを使用するべきではありません。 –
正しいコントローラアクションでこれを実行していますか? updateは通常、対応する 'edit' GETビューに関連付けられたPUTアクションです。おそらくあなたは '編集'方法でこれを行うように指示しますか? – ipd
@MauricioLinhares入力いただきありがとうございます。 Car_infoは、組み込みのスキャフォールディングを使用して自動的に作成されたモデルの名前です。これが私に次のエラーをもたらす理由かもしれませんか? – Xaxum