0
我有一个名为“userinfo”的用户配置文件控制器,它是相应的视图。 userinfo索引是根路径。在主页(这是用户信息索引),我有一个链接,可以将您带到用户个人资料页面。它给我这个错误,当我去到主页:为什么在尝试访问rails中的实例时遇到recordnotfound错误?
class UserinfosController < ApplicationController
before_action :find_userinfo, only: [:show, :edit, :update, :destroy]
before_action :authenticate_user!
def index
@userinfors = Userinfo.find(params[:id])
end
def show
@myvideo = Video.last
end
def new
@userinformation = current_user.userinfos.build
end
def create
@userinformation = current_user.userinfos.build(userinfo_params)
if @userinformation.save
redirect_to root_path
else
render 'new'
end
end
def edit
end
def update
end
def destroy
@userinformation.destroy
redirect_to userinfo_path
end
private
def userinfo_params
params.require(:userinfo).permit(:name, :email, :college, :gpa, :major)
end
def find_userinfo
@userinformation = Userinfo.find(params[:id])
end
end
,我的看法是:
<%= link_to 'profile', userinfors_path(@userinfors) %>
我的路线。 rb文件:
Rails.application.routes.draw do
devise_for :users
resources :userinfos do
resources :videos
end
resources :pages
get '/application/decide' => 'application#decide'
root 'userinfos#index'
get '/userinfos/:id', to: 'userinfos#show', as: 'userinfors'
end
感谢您的任何帮助!
谢谢!我试图使用快捷方式,因为我不想在不同控制器之间创建关联。但是,你的方式是有效的。 – Dinukaperera
你可以根据你的需要绝对地操作导轨,但是需要理解标准的方法..不管怎样,很高兴它有助于.. :) –