私は2つのモデルを持っています。最初はTaxirecord、2番目はCarparkです。各Taxirecordは、独自の駐車場を持つことがあります。私はcarparkレコードにtaxirecord_idを渡すことに問題があります。私はルートを持っていますRuby on Rails - 別のコントローラからのIDを渡す
car_new GET /taxidetail/:taxirecord_id/carpark/new(.:format) carparks#new
そして、私は渡したいと思っています:taxirecord_id、それは私の作成コントローラであるtaxirecordのidです。 私の駐車場モデル:PARAMに基づいて検索機能によってtaxirecord_idを見つけるコントローライムで
class Carpark < ActiveRecord::Base
belongs_to :taxirecord
end
:taxirecord_idは、しかし、作成時にidがnilであるが呼び出されます。私が間違ってやっていることを見つけ出すのを手伝ってください。どうすればこの問題を解決できますか?助けてくれてありがとう!
私の駐車場コントローラ
class CarparksController < ApplicationController
def new
@car = Carpark.new
end
def create
@car = Carpark.new(carpark_params, taxirecord_id: Taxirecord.find(params[:taxirecord_id]))
if @car.save
flash[:notice] = "Zaznam byl ulozen"
redirect_to root_path
else
flash[:notice] = "Zaznam nebyl ulozen"
render 'new'
end
end
private def carpark_params
params.require(:carpark).permit(:car_brand, :car_type, :driver_name, :driver_tel)
end
end
あなたのコントローラには何がありますか?あなたはそのルートへのリクエストをどのように実行していますか? –
**コードの説明だけでなく、フルコード**を表示してください。私は、あなたが必要な属性で 'permit'を呼んでいないということが問題だと思っていますが、コードを見ずにあなたの質問に正しく答えることができません! –
私はあなたがここで何を意味するかを理解することは可能であるとは思わない。あなたは、あなたが少し欲しいものを説明する必要があります。より多くのコードを表示することはおそらく役に立ちます。前と後の場合もあるかもしれません。 – kaspernj