1
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'
クラスAndroidsController < ApplicationControllerにこれはルーティングエラーですか?
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
エンド
私は 'アンドロイド/:ID' にアクセスするときには、#アンドロイド#は#アンドロイド番号のcustomerviewをしませ示して示しています。私のコードに何か問題がありますか?このルーティングエラーはどうすればよいですか?手動でlocalhost:****/androids/customer/2と入力すると、適切なhtmlページが表示されますが、顧客ページからリンクをクリックすると、/ android /:idページだけが表示されます。
ありがとうrお客様の視点!それを2回使うことはできませんか? – Alyanna
同じルート宣言を2回使用すると、最初のルート宣言が上書きされます。あなたの例では、 '/ androids /:id'へのすべてのアクセスが常に' 'アンドロイド(' 'androids)に向かうように再割り当てされたため、':androids#show ' #show''アクション。 –
助けてくれてありがとう!!!!! :) – Alyanna