J'ai deux modèles. Le premier est Taxirecord et le second est Carpark. Chaque Taxirecord peut avoir son propre parking. J'ai un problème avec la transmission de taxirecord_id au dossier Carpark. J'ai la routeRuby on Rails - Identifiant de passe d'un autre contrôleur
car_new GET /taxidetail/:taxirecord_id/carpark/new(.:format) carparks#new
Et je veux passer: taxirecord_id, qui est id taxirecord que l'édition im, à mon contrôleur créer. Mon modèle de parking:
class Carpark < ActiveRecord::Base
belongs_to :taxirecord
end
dans le contrôleur im trouver taxirecord_id par fonction de recherche basée sur param: taxirecord_id, mais id est nul quand créer est appelée. Pouvez-vous s'il vous plaît m'aider à trouver ce que je fais mal et comment puis-je résoudre ce problème? Merci pour toute aide!
Mon contrôleur de parking
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
Que contient votre contrôleur? et comment faites-vous la demande à cette route? –
S'il vous plaît ** montrez votre code complet **, pas seulement une description de votre code. Je suppose que le problème est que vous n'appelez pas «permis» avec les attributs nécessaires, mais je suis incapable de répondre correctement à votre question sans voir le code! –
Je ne crois pas qu'il soit possible de comprendre ce que vous voulez dire ici. Vous devez décrire ce que vous désirez un peu mieux. Montrer plus de code aiderait probablement. Peut-être aussi un cas avant et après. – kaspernj