Ich versuche Stripe-Zahlungen in meine Pin-Scaffolding (RoR) zu integrieren und bekomme derzeit den folgenden Fehler. HierIntegration von Stripe-Zahlungen in Pin-Gerüst mit Ruby
ist die folgende Fehlermeldung unten, und es unterstreicht "@pin = Pin.find (params [: id])":
ActiveRecord::RecordNotFound in PinsController#show
private
def set_pin
@pin = Pin.find(params[:id])
end
def correct_user
Hier sind meine routes.rb
Rails.application.routes.draw do
resources :pins
devise_for :users
root "pins#index"
get "about" => "pages#about" #creates about_path
get "contact" => "pages#contact" #creates contact_path
get "auction" => "pages#auction" #creates auction_path
get "terms" => "pages#terms" #creates terms_path
post 'send_mail', to: 'contact#send_mail'
get 'contact', to: 'contact#show'
scope 'pins', controller: :pins do
scope '/:id' do
post 'bid', to: :bid
end
end
scope 'admin', controller: :admin do
scope 'pins' do
get '/:pin_id', to: :pin
end
end
end
Wie behebe ich dieses Problem und starte den richtigen Weg? Vielen Dank!
Danke Mike! Ich habe gerade versucht, die Routen zu ändern, was Sie vorgeschlagen, aber immer noch in der gleichen Fehlermeldung, wo es "Pin mit 'ID' = Empfangsbestätigung" für @ Pin = Pin.find (params [: ID]) am Controller nicht finden konnte . Nur um klar zu sein, meinst du, ich ändere es einfach in: @ pin = Pin.find (params [: pin_id] statt? –
Für "@pin = Pin.find (params [: id])" am Controller, ich habe es nur geändert in: "@pin = Pin.find (params [: pin_id]" und bekomme "SyntaxError in PinsController # index" unerwartetes Schlüsselwortende, obwohl die Syntax richtig aussieht. Was könnte hier falsch sein? –
Du hast es nicht getan schließe deine Klammer –