get 'androids/customer', to: 'androids#customer'
get 'androids/:id', to: 'androids#customerview'
get 'androids', to: 'androids#items'
get 'androids/new', to: 'androids#new'
post 'androids/create', to: 'androids#create'
get '/androids/:id', to: 'androids#show'
get 'androids/:id/edit', to: 'androids#edit'
patch 'androids/:id/update', to: 'androids#update'
get 'androids/:id/delete', to: 'androids#delete'
get 'androids/:id/sold', to: 'androids#show'
Klasse AndroidsController < ApplicationIst das ein Routingfehler?
def items
@android = Android.all
end
def customer
@android = Android.all
end
def customerview
@android = Android.find(params[:id])
end
def show
@android = Android.find(params[:id])
end
def new
@android = Android.new
end
def create
@android = Android.new
@android.name = params[:android][:name]
@android.brand = params[:android][:brand]
@android.year = params[:android][:year]
@android.camera = params[:android][:camera]
@android.mpixel = params[:android][:mpixel]
@android.storage = params[:android][:storage]
@android.slot = params[:android][:slot]
@android.size = params[:android][:size]
@android.os = params[:android][:os]
@android.stock = params[:android][:stock]
@android.save
redirect_to "/androids/#{@android.id}"
end
def edit
@android = Android.find(params[:id])
end
def delete
@android = Android.find(params[:id])
@android.destroy
redirect_to '/androids'
end
def update
@android = Android.find(params[:id])
@android.update_attributes(android_params)
redirect_to "/androids/#{@android.id}"
end
private
def android_params
params.require(:android).permit(:name, :brand, :year, :camera, :mpixel, :storage, :slot, :size, :os, :stock)
end
Ende
Wenn ich auf 'Androiden /: id' es zeigt die # Androiden # zeigen nicht die # Androiden # Customer. Stimmt etwas mit meinem Code nicht? Was soll ich mit diesem Routing-Fehler machen? Wenn ich localhost: ****/androids/customer/2 manuell eintippe, wird die richtige html-Seite angezeigt. Wenn ich jedoch auf den Link von der Kundenseite klicke, wird nur die/android /: id-Seite angezeigt.
Danke es funktionierte fo r die Kundenansicht! Kann ich es nicht zweimal benutzen? – Alyanna
Wenn Sie das zweite Mal dieselbe Routenerklärung verwenden, wird die erste überschrieben. In Ihrem Beispiel haben die 'to: 'androids # show'' die vorherige Controller-Aktion ('' androids # customerview'') ersetzt, so dass alle Zugriffe auf '/ androids /: id' neu zugewiesen wurden, um immer auf die' 'androids zu verweisen # Show'' Aktion. –
danke für die Hilfe !!!!! :) – Alyanna